列表语法的Python列表

标签 python list syntax

<分区>

list of lists的这两个声明有什么区别?

>>> l = [[]]*4
>>> l
[[], [], [], []]
>>> l[1].append(1)
>>> l
[[1], [1], [1], [1]]

>>> m = [[],[],[],[]]
>>> m[1].append(1)
>>> m
[[], [1], [], []]

最佳答案

第一个创建了对单个列表的四个引用——它是同一个列表重复了四次。第二个创建四个不同的列表。在第一种情况下,当您追加到一个列表时,它会影响所有列表,因为它们都是同一个对象。在第二种情况下,每个列表都是一个不同的对象,因此附加到一个列表不会影响其他列表。

关于列表语法的Python列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11212246/

相关文章:

python - 函数返回 None 而不是预期的字符串

Python:创建以列表索引号为键并以列表元素为值的字典?

python - 获取对象列表中具有最大属性值的对象

python - 如何验证每个列表是否包含通用号码?

lambda - 我不明白为什么 lambda 方案有效

php - "<<<"运算符的名称是什么?

function - Sass map.get() 不起作用。 map-get() 可以。是什么赋予了?

python - 如何在我的代码中传递全局调试标志变量;我应该使用 argparse 吗?

python - 有没有一种简单的Python方法来填充缺失值nth之前和nth之后

python - 如何将文件导入到python中