将函数应用于列表中的每个元素



类似于将函数应用于列表的每个元素,但是该问题的答案(列表推导式或map())实际上返回一个新列表来取代旧列表。

我想这样做:

for obj in myList:
obj.count = 0

显然,我可以(并且目前确实)以这种方式处理列表,但我想知道是否有一个结构,如

foreach(lambda obj: obj.count=0, myList)

显然,我只关心这个,如果更多的"python "方式更有效率。我的列表可以有超过100,000个元素,所以我希望这是快速的。

请注意,您的问题不是关于就地替换列表中的元素,而是更改每个元素的属性,而不使用替换后者。你在for循环方面的尝试是正确的。

最新更新