多次赋值数组,python
我有一个Python元素列表,需要为整个列表分配一个数字。在多次赋值数组,python,python,Python,我有一个Python元素列表,需要为整个列表分配一个数字。在R中,我可以简单地完成作业,然后R将rep这个数字重复必要的次数。在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 sim
R
中,我可以简单地完成作业,然后R
将rep
这个数字重复必要的次数。在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
是的,像
[0 for uux]
这样的理解是正确的(如果你没有对值做任何事情,就不需要范围)。R的语法非常强调向量,而Python在这种情况下更喜欢显式指令。是的,像[0 for ux]这样的理解是正确的
是一种方法(如果您没有对值进行任何操作,则不需要使用范围(len(…
)。R的语法非常强调向量,而Python在这种情况下更喜欢显式指令。您也可以尝试:
x = [1,2,3,4,5]
x = [0] * len(x)
希望这有帮助。您也可以尝试:
x = [1,2,3,4,5]
x = [0] * len(x)
>>> x[:] = [0]*len(x)
>>> x
[0, 0, 0, 0, 0]
希望这能有所帮助。将0分配给整个列表与“创建一个长度相同的0的新列表”之间有什么区别?将0分配给整个列表与“创建一个长度相同的0的新列表”之间有什么区别?在可变对象上使用乘法运算符可能是危险的。可能值得一提…在可变对象上使用乘法运算符可能是危险的。可能值得一提。。。
>>> x[:] = [0]*len(x)
>>> x
[0, 0, 0, 0, 0]