多次赋值value,python

时间:2016-01-09 02:36:07

标签: python

我有一个Python元素列表,需要为整个列表分配一个数字。在R中,我可以简单地完成作业,Rrep编号必要的次数。在Python中,进行列表理解是最简单的事情吗?

x = [1,2,3,4,5]
#want to assign 0 to every element, would like to do x[:] = 0 but this causes an error
x[:] = [0 for i in range(len(x))] #pretty long for such a simple operation

3 个答案:

答案 0 :(得分:2)

是的,[0 for _ in x]之类的理解是要走的路(如果你没有对这些值做任何事情,则不需要range(len(...)。 R的语法非常强调向量,而Python在这种情况下偏好显式指令。

答案 1 :(得分:1)

您也可以尝试:

x = [1,2,3,4,5]
x = [0] * len(x)

希望这有帮助。

答案 2 :(得分:1)

>>> x[:] = [0]*len(x)
>>> x
[0, 0, 0, 0, 0]