a = '12345'
b = a
a = 'sssss'
print('a ===== %s' % a)
print('b ===== %s' % b)
结果:
a ===== sssss
b ===== 12345
字符串或者数字的引用指向的是一个值的地址
list
a = [1, 2, 3, 4]
b = a
b[1] = 5
print('a ===== %s' % a)
print('b ===== %s' % b)
结果
a ===== [1, 5, 3, 4]
b ===== [1, 5, 3, 4]
list的引用,指向的是列表的地址,并不是列表的内容,这种情况会修改list的本身,不想修改list的本身,请使用copy()
如果要复制的列表中包含了列表, 那就使用 copy.deepcopy()函数来代替
a = [1, 2, 3, 4]
b = a.copy()
b[0] = 5
print('a ===== %s' % a)
print('b ===== %s' % b)
结果:
a ===== [1, 2, 3, 4]
b ===== [5, 2, 3, 4]
Dictionary 字典
a = {
'a': 1,
'b': 2,
'c': 3
}
b = a
b['b'] = 4
print('a ===== %s' % a)
print('b ===== %s' % b)
结果:
a ===== {'a': 1, 'b': 4, 'c': 3}
b ===== {'a': 1, 'b': 4, 'c': 3}
字典的引用,指向的是字典的地址,并不是字典的内容,这种情况会修改字典的本身,不想修改字典的本身,请使用copy()
如果要复制的列表中包含了列表, 那就使用 copy.deepcopy()函数来代替
a = {
'a': 1,
'b': 2,
'c': 3
}
b = a.copy()
b['b'] = 4
print('a ===== %s' % a)
print('b ===== %s' % b)
结果:
a ===== {'a': 1, 'b': 2, 'c': 3}
b ===== {'a': 1, 'b': 4, 'c': 3}