python - 如何复制数组元素
问题描述
我有一个再次包含数组的数组。现在我想在我的主数组中让每个内部数组两次。
不幸的是,当我按照我的方式进行操作时,我弄乱了索引并且无法修改数组中的特定元素(例如Payliketable[2][5]
:),因为那时有很多次。
如何复制每个内部数组,同时给每个数组自己的“索引”?
i = 1
while i < len(PaylikeTable):
PaylikeTable.insert(i,PaylikeTable[i])
i += 2
如前所述,数组“Payliketable”再次由数组组成。
解决方案
列表是可变的。有关mutables 和 immutables的更多信息,请参见此处。
要创建一个可变的副本(而不仅仅是对其的引用),最好的方法是使用copy模块。
import copy
PaylikeTable = [[1, 2, 3], [2, 4, 6], [5, 6, 2]]
i = 0
lpt = len(PaylikeTable)*2
while i < lpt:
PaylikeTable.insert(i, copy.deepcopy(PaylikeTable[i]))
i += 2
print(PaylikeTable) #the doubled list
#[[1, 2, 3], [1, 2, 3], [2, 4, 6], [2, 4, 6], [5, 6, 2], [5, 6, 2]]
PaylikeTable[3][1] = 99
print(PaylikeTable) #only element 3, 1 is edited.
#[[1, 2, 3], [1, 2, 3], [2, 4, 6], [2, 99, 6], [5, 6, 2], [5, 6, 2]]
推荐阅读
- java - 如何为 @Sql 指定数据源以进行 Spring 测试
- java - 在java中使用文本文件查找集合和类的平均值
- javascript - 加载后链接文档中的任意文本
- excel - 如何在 WinHTTP VBA 中禁用 SSL 证书验证 - 自动化错误
- python - 编译 discord.py 时如何解决错误?
- reactjs - 如何在 nextjs 中使用 React 组件?
- oracle12.1 - 如何使用另一个参考游标变量分配一个参考游标?
- python - 列表到 csv-python
- google-cloud-platform - ansible:gcp_compute_disk - 从快照创建磁盘的问题
- variables - 变量名和逗号后的下划线有什么作用?