python将一个值 append 到子列表

标签 python list append

<分区>

我在我的程序中遇到了一个问题,我不确定我做错了什么。首先,我创建了一个空的列表列表。例如:

>>> Lists = [[]]*12

给出:

>>> Lists
[[], [], [], [], [], [], [], [], [], [], [], []]

但是,当尝试将值 append 到单个子列表时,它会将值添加到所有子列表。例如:

>>> Lists[2].append(1)

给予:

>>> Lists
[[1], [1], [1], [1], [1], [1], [1], [1], [1], [1], [1], [1]]

有没有办法只 append 到一个子列表,以便结果看起来像:

>>> Lists
    [[], [], [1], [], [], [], [], [], [], [], [], []]

最佳答案

List 对象是可变的,因此您实际上是在创建一个包含 12 个对 one 列表的引用的列表。使用列表理解并制作 12 个不同的列表:

Lists = [[] for i in range(12)]

抱歉,我找不到这个问题的原始副本

关于python将一个值 append 到子列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17225694/

相关文章:

python - 如何从 CSV 文件子集创建自定义 DataFrame

python - html代码问题如何放入数据库

list - 用于将数据 append 到列表末尾的 Data.Sequence 与 Data.DList

无法将元素添加到单向简单列表

linux - Bash 脚本 : Restore specific text in a file after some file editing

python - 导入错误 : cannot import name TwilioRestClient

python - 发送一封电子邮件,其中包含 DataFrames 作为电子邮件正文中的表格

Python - 快速删除此列表中的重复项的方法?

python - 按元素将单行 append 到 Pandas 数据框中

for循环和 append 的Python问题