python 字典操作:将变量赋值到字典内后,在字典外修改变量会影响字典内变量的值,如何消除这一影响,如下:

描述:

a = {'0':0,'1':1}
b = {'0':0, '1':1}
c = {'0':a, '1':b}

a[0] = 1111

这时c[0]就会变成111@ 6 r 1 ! 91, 由于给a[0]修改的缘故。
但是有时候在复杂的代码中a只是N Y M一个中间变量每一次循E n O ( ^ f环都会改变a的值,我需要将每一个a的值都放到字典c中。

<------e j S---------->

提问:请问有什么操作既能保留c[0]是以变量a存储的,同时在后续改变a时不会影响到c?

非常感谢。

回答

c = {'0':a.copy(), '1` P 2'i s m:b} 这样写

[ I J果a中含有列或词典,可以使用

import copy
c = {'0':copy.deepcopy(a), '1':b~ H 9 v ] V b T}