python - 如何停止 Python 修改多个变量?
问题描述
当我尝试修改列表中的值时,它也在修改另一个列表中的单独值。我不相信这会是一个错误,但我想知道如何独立处理这些变量。
我已经尝试过对单个变量而不是列表进行此操作,并且不会出现此问题。我可以单独设置列表,但是当有大量列表时,这似乎是不必要的。
numbers = [1,2,3,4,5]
list_A = numbers
list_B = numbers
print("list A:",list_A)
print("list B:",list_B)
list_A[2] = 10
print("list A:",list_A)
print("list B:",list_B)
我希望输出:
list_A:[1, 2, 3, 4, 5]
list_B:[1, 2, 3, 4, 5]
list_A: [1, 2, 10, 4, 5]
list_B: [1 , 2, 3, 4, 5]
而是得到这个:
list_A:[1, 2, 3, 4, 5]
list_B: [1, 2, 3, 4, 5]
list_A: [1, 2, 10, 4, 5]
list_B: [1, 2 , 10, 4, 5]
两个列表都已修改的地方
解决方案
numbers = [1,2,3,4,5]
list_A = numbers.copy()
list_B = numbers.copy()
print("list A:",list_A)
print("list B:",list_B)
list_A[2] = 10
print("list A:",list_A)
print("list B:",list_B)
这是python,所以你必须这样做。
有关详细信息,请参阅如何克隆或复制列表?
推荐阅读
- python - 将字符串数组转换为整数python
- php - EXCEL:如何在excel中添加背景标题颜色;使用 PHP 导出?
- charts - 如何在chartjs中显示两条重叠线
- ansible - 如何在托管主机上的文件中列出 Ansible 托管文件?
- css - Why is the grid-gap ignored on this multi row grid item?
- python - 在虚拟机与本地 PC 上返回相反结果的相同代码
- jquery - 无法读取 _id 未定义的属性
- java - 如何通过按钮 OnClick 保存 Canvas 图像?
- maven - 配置 Maven 以在 JUnit 测试中对资源文件使用特定编码
- robotframework - 如何验证是否在机器人框架中动态启用/禁用元素并将其结果存储在变量中?