python Manager 之dict KeyError问题的解决
2019-12-22 07:05
2546 查看
程序需要多进程见共享内存,使用了Manager的dict。
最初代码如下:
from multiprocessing import Process, Manager d = Manager().dict() d2 = {} def f(): d['a1'] = {} <span style="color:#ff6666;"> d['a1']['a2'] = 11</span> print d['a1']['a2'] if __name__ == '__main__': p = Process(target=f) p.start() p.join()
结果报错:
print d['a1']['a2'] KeyError: 'a2'
解决方案:
from multiprocessing import Process, Manager d = Manager().dict() d2 = {} def f(): d['a1'] = {} <span style="color:#ff6666;"> d2['a2'] = 11 d['a1'] = d2</span> print d['a1']['a2'] if __name__ == '__main__': p = Process(target=f) p.start() p.join()
以上这篇python Manager 之dict KeyError问题的解决就是小编分享给大家的全部内容了,希望能给大家一个参考
您可能感兴趣的文章:
相关文章推荐
- python Manager 之dict KeyError问题
- 解决python中问题AttributeError: 'collections.defaultdict' object has no attribute 'iteritems'
- Python 读Dict数据的方法,解决key 不在dict的问题,get()函数,setdefault()函数
- python问题:IndentationError:expected an indented block错误解决
- python问题:IndentationError:expected an indented block错误解决 .
- 【python学习】编码时写路径使用后斜杠导致的unicode error问题解决办法
- python: IndentationError: expected an indented block问题解决
- python问题:IndentationError:expected an indented block错误解决
- Python 3.6 模块安装“error: Microsoft Visual C++ 14.0 is required...”问题解决
- 【Python】安装python包时遇到"error: Microsoft Visual C++ 9.0 is required"问题的解决方法
- ERROR 1451 (23000): Cannot delete or update a parent row: a foreign key constraint fails...问题解决
- Python安装模块出现问题UnicodeDecodeError的解决方法
- python3学习笔记1--TypeError: 'dict' object is not callable的解决
- 【解决问题】解决python安装模块时UnicodeDecodeError
- Error connecting to the Service Control Manager: 拒绝访问 Mongodb问题-解决
- python问题:IndentationError:expected an indented block错误解决
- 解决Python中格式化Dict对象时,中文为Unicode的问题
- python错误:AttributeError: 'module' object has no attribute 'setdefaultencoding'问题的解决方法
- python问题:IndentationError:expected an indented block错误解决
- python问题:IndentationError:expected an indented block错误解决