-
按照正常修改字典的邏輯修改字典,代碼如下:
import multiprocessing multi_dict = multiprocessing.Manager().dict() multi_dict.update({"dev1": {"app1": [11], "app2": [22]}, "dev2": {"app3": [33], "app4": [44]}}) print(multi_dict) # 打印結果:{'dev1': {'app1': [11], 'app2': [22]}, 'dev2': {'app3': [33], 'app4': [44]}} # 現在要更新dev1中app2的值,該怎么辦? # 正常的修改方法 multi_dict['dev1']['app2'] = multi_dict['dev1']['app2'] + [222] print(multi_dict) # 打印結果:{'dev1': {'app1': [11], 'app2': [22]}, 'dev2': {'app3': [33], 'app4': [44]}}
可以看到並沒有修改成功
-
稍微修改一下代碼
import multiprocessing multi_dict = multiprocessing.Manager().dict() multi_dict.update({"dev1": {"app1": [11], "app2": [22]}, "dev2": {"app3": [33], "app4": [44]}})
temp_dict = multi_dict["dev1"] temp_dict["app2"] = temp_dict["app2"] + [222] multi_dict["dev1"] = temp_dict print(multi_dict) # 打印結果:{'dev1': {'app1': [11], 'app2': [22, 222]}, 'dev2': {'app3': [33], 'app4': [44]}}
這樣就修改成功了