python Manager 之dict KeyError问题的解决
本文向大家介绍python Manager 之dict KeyError问题的解决,包括了python Manager 之dict KeyError问题的解决的使用技巧和注意事项,需要的朋友参考一下
程序需要多进程见共享内存,使用了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问题的解决就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#yiidian.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。