首页 > 解决方案 > python 2.7 list:使用 Del list 方法清除列表的内容,还删除该列表的先前存档副本

问题描述

问题:案例 1:如果我在 main_list 中附加一个 sub_list 并使用 python 2.7 Del list 方法删除 sub_list,它会清除 sub_list 的内容,但也会清除 main_list 中存档的 sub_list 内容。为什么 ?

案例 2:我尝试使用 sub_list = []。哪个工作正常。

我想知道为什么案例 1 是 NOK 但案例 2 是 OK

源代码:

sub_list = []
main_list = []
sub_list.append(1)
sub_list.append(2)
sub_list.append(3)
main_list.append(sub_list)
del sub_list[0:]
print(main_list)

我希望输出为 [[1,2,3]] 但输出为 [[]]

标签: pythonpython-2.7

解决方案


sub_list = []
main_list = []
sub_list.append(1)
sub_list.append(2)
sub_list.append(3)
main_list.extend(sub_list)
del sub_list[0:]
print(main_list)

推荐阅读