我目前正在尝试弄清楚如何用一个给定的元素填充一个列表,覆盖列表中的其他元素。所以完全用1个元素替换给定列表中的每个元素。如何用零填充列表,覆盖列表中的所有元素?
对于列表值= 1,2,3,4,5,有没有办法使列表成为值= 0,0,0,0,0
有没有一种方法可以从列表中删除所有元素?那么,对于值= 1,2,3,4,5,就设为values[]?
发布于 2016-05-19 03:44:15
>>> x = [1, 2, 3]
>>> x[:] = [0] * len(x)
>>> x
[0, 0, 0]说明:左侧是所有索引的切片,允许分配给切片,而右侧是一个很好的语法,用于生成重复元素列表。
在相关的注释中,永远不要这样做:
>>> a = [[0] * 5] * 5
>>> a
[[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]因为这样的事情就会发生:
>>> a[0][0] = 3
>>> a
[[3, 0, 0, 0, 0], [3, 0, 0, 0, 0], [3, 0, 0, 0, 0], [3, 0, 0, 0, 0], [3, 0, 0, 0, 0]]发布于 2016-05-21 03:26:52
不带任何函数的清除列表理解--只有替换元素。我想,
X= 1,2,3 x.clear()
发布于 2016-05-19 03:44:57
要使用一个值替换列表中的所有元素,请执行以下操作:
values = [0] * len(values)这将根据组成列表长度所需的次数重复0,然后将其分配给values。Do not将此方法与自定义类等可变对象一起使用!
要清空列表,请将名称分配给一个空列表:
values = []https://stackoverflow.com/questions/37308760
复制相似问题