在Python中实现一些设计模式时,我发现了一些关于字典的有趣内容.我dict1用dict构造函数创建了一个变量.然后dict1被分配到dict2.但是当改变键的值时dict2,它会受到影响dict1.
码:
dict1 = dict(a=1, b=2)
dict2 = dict1
print("dict1 = ", dict1)
print("dict2 = ", dict2)
# assigning value of key 'a' in dict2 only
dict2['a'] = 0
print("---------------------------")
print("dict1 = ", dict1)
print("dict2 = ", dict2)
Run Code Online (Sandbox Code Playgroud)
输出:
dict1 = {'b': 2, 'a': 1}
dict2 = {'b': 2, 'a': 1}
---------------------------
dict1 = {'b': 2, 'a': 0}
dict2 = {'b': 2, 'a': 0}
Run Code Online (Sandbox Code Playgroud)
我发现列表也有相同类型的行为:
list1 = [1, 2, 3] …Run Code Online (Sandbox Code Playgroud)