Python。如何根据另一个列表声明一个列表,但要使它们不相互引用?

标签 python list

<分区>

例如考虑以下内容:

a = [1,5,3,4]
b = a
a += [6]

在我将 6 附加到列表 a 之后,它也将它附加到列表 b,因为它们相互引用(如果我写成 b+=[6],它会产生相同的结果)。我需要的是将列表 b 初始化为与列表 a 相同但不使其引用列表 a。

谢谢!

最佳答案

您正在执行所谓的浅拷贝。你想做一个深拷贝。

Deep copy a list in Python

这里有一篇关于 python 中浅层复制和深度复制的文章: https://docs.python.org/2/library/copy.html

关于Python。如何根据另一个列表声明一个列表,但要使它们不相互引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27305007/

相关文章:

c# - 查找列表中最常出现的项目的方法

c# - 从列表创建敌人

python - TabPy:Python 将 Json 返回到 Tableau, "Error Parsing Number"

python - 为什么我的 3D numpy 数组中的值在我将其写入文件时会发生变化?

python - 如何增加列表中每个项目/元素的值?

c# - 为什么返回集合接口(interface)而不是具体类型?

添加向量列表的 Pythonic 方法

python - 将 nan 值替换为唯一日期(numpy 数组中的日期。)

python - 在 Linux 上编译 Python 绑定(bind)

python - Django 管理.py 迁移验证错误