列表赋值的先后顺序问题

列表赋值的先后顺序问题
![](file:///C:\Users\Administrator\Documents\Tencent Files\442569872\Image\C2C\DJVN@GTG0$)Q)6M)[9UUBSH.png)
列表赋值的先后顺序问题
如图,为什么列表先给my_foods列表赋值,然后令friend_foods = my_foods, 然后给my_foods列表append一个新的元素,也能给friends_foods添加进去呢?初学python,请大神解答一下两者之间的差异呢?

讨论数量: 3

百度或者 Google 搜索 Python 可变对象 不可变对象

3周前

可以使用深度拷贝:
import copy
list_new = copy.deepcopy(list)
这样就不会互相影响了

3周前

列表是可变类型, friends_foods = my_foods,这样的写法是 friends_foods同样指向my_foods列表的内存空间(可以使用id方法进行查询两者是否为同一指向),所以my_foods在后面进行追加数据时,并没有改变两者的指向。

4天前

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!