您的位置:首页 > 编程语言 > Python开发

python的list之间相互赋值的陷阱

2018-03-05 17:05 417 查看
在python中List是引用类型,直接复制的时候是浅拷贝,改变了原来变量的值幅值之后的也会改变,所以要么深拷贝,要么重新申明,切记切记

以下代码是踩过的坑,谨记谨记!!!

lst_1 = []
lst_2 = []
for i in range(5):
lst_2.clear()
lst_2.append(i)
lst_1.append(lst_2)
lst_1


上面代码的结果是[[4],[4],[4],[4]]

lst_1 = []
lst_2 = []
for i in range(5):
lst_2 = []
lst_2.append(i)
lst_1.append(lst_2)
lst_1


这段代码的结果才是正确的[[1],[2],[3],[4]]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: