Python相当于php的foreach($ array as $ key =>&$ value)

Dan*_*lde 31 python for-loop

是否有任何等效的PHP表示法,它改变了原始数组(注意引用运算符)?

// increase value of all items by 1
foreach ($array as $k => &$v) {
    $v++;
}
Run Code Online (Sandbox Code Playgroud)

我只知道这种方式,这不是那么优雅:

for i in range(len(array)):
    array[i] += 1 
Run Code Online (Sandbox Code Playgroud)

Aco*_*orn 52

当在enumerate()列表上调用内置函数时,它返回一个可以迭代的对象,返回一个count和从列表返回的值.

for i, val in enumerate(array):
    array[i] += 1
Run Code Online (Sandbox Code Playgroud)


Sah*_*has 5

你可以使用列表理解:

newArray = [i + 1 for i in array]
Run Code Online (Sandbox Code Playgroud)

  • 如果您的列表很小,这很好,但如果您处理大量数据,则希望避免分配第二个列表 (2认同)