我有一个清单:
mylist = [1,2,3]
Run Code Online (Sandbox Code Playgroud)
我想将第一个元素更改为列表,因此列表中的列表.我的第一次尝试:
mylist + mylist[1:]
Run Code Online (Sandbox Code Playgroud)
给我
[1, 2, 3, 2, 3] # not what I want
Run Code Online (Sandbox Code Playgroud)
我的第二次尝试
mylist[0]=mylist
Run Code Online (Sandbox Code Playgroud)
给我
[[...], 2, 3] # is this an infinite list?
Run Code Online (Sandbox Code Playgroud)
虽然我想要
[[1,2,3], 2, 3]
Run Code Online (Sandbox Code Playgroud)
mylist[0] = mylist指向 mylist 的引用。你可以想象它像这样
每个第一个元素都有一个列表,该列表又具有另一个列表。这种情况还在继续。
所以你的问题的解决方案是这样的
>>> mylist = [1,2,3]
>>> mylist[0] = mylist[:]
>>> mylist
[[1, 2, 3], 2, 3]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
248 次 |
| 最近记录: |