我想要一个完整相同的列表,其中的东西将是一个字符串或数字.这两个列表的创建方式有区别吗?有什么隐藏我应该知道的吗?
list_1 = [0] * 10
list_2 = [0 for i in range(10)]
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法来完成同样的任务?
提前致谢.
ogg*_*ggy 15
这取决于你的列表元素是否可变,如果是,则会有所不同:
>>> l = [[]] * 10
>>> l
[[], [], [], [], [], [], [], [], [], []]
>>> l[0].append(1)
>>> l
[[1], [1], [1], [1], [1], [1], [1], [1], [1], [1]]
>>> l = [[] for i in range(10)]
>>> l[0].append(1)
>>> l
[[1], [], [], [], [], [], [], [], [], []]
Run Code Online (Sandbox Code Playgroud)
对于不可变元素,两者的行为是相同的.它们之间可能存在性能差异,但我不确定哪一个会表现得更快.
| 归档时间: |
|
| 查看次数: |
7393 次 |
| 最近记录: |