相关疑难解决方法(0)

列表更改意外地反映在子列表中

我需要在Python中创建一个列表列表,所以我输入以下内容:

myList = [[1] * 4] * 3
Run Code Online (Sandbox Code Playgroud)

列表看起来像这样:

[[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]]  
Run Code Online (Sandbox Code Playgroud)

然后我改变了最里面的一个值:

myList[0][0] = 5
Run Code Online (Sandbox Code Playgroud)

现在我的列表看起来像这样:

[[5, 1, 1, 1], [5, 1, 1, 1], [5, 1, 1, 1]]  
Run Code Online (Sandbox Code Playgroud)

这不是我想要或期望的.有人可以解释一下发生了什么,以及如何解决这个问题?

python list mutable nested-lists

576
推荐指数
10
解决办法
3万
查看次数

如何将值插入列表列表

[[1, 2, 3], [1, 2, 3], [1, 2, 3], [1, 2, 3], **2**, # <-- HERE [1, 2, 3], [1, 2, 3], [1, 2, 3]]

这是我目前的输出.如果你看一下上面的行,就会有一个2单独的行.
这是我使用的代码

                    someList.insert((index), 2)
Run Code Online (Sandbox Code Playgroud)

有没有办法2让它在前面的索引中

[[1, 2, 3], [1, 2, 3], [1, 2, 3], [1, 2, 3], [1, 2, 3, 2], # <-- HERE [1, 2, 3], [1, 2, 3], [1, 2, 3]]

python list

1
推荐指数
1
解决办法
92
查看次数

标签 统计

list ×2

python ×2

mutable ×1

nested-lists ×1