我有一个函数change(),我想要它对一个列表进行修改,并输出原列表和新列表,但我发现了很奇怪的问题:
求指点,为什么第二次代码,新旧列表会一样
def change(old):
new = old[:]
print(old)
new[1] = 22
#当我对列表的一号索引修改值后,一切正常
print("-------")
print(old)
print(new)
aa = [[5, 2], ['AAA']]
change(aa)
def change(old):
new = old[:]
print(old)
#当我对列表的0号索引的一号索引修改值后,新旧列表变成相同的了
new[0][1] = 33
print("-------")
print(old)
print(new)
aa = [[5, 2], ['AAA']]
change(aa)