将对象方法映射到对象列表的更加pythonic方式

时间:2014-02-05 10:21:46

标签: python object methods map

假设我有一种名为myObject的对象,它包含一个方法。我有一个包含这些对象的列表,我想为所有这些对象运行一个方法。现在我正在这样做:

for object in list_of_objects:
    object.method()

我想知道是否有更多的pythonic方式来做这件事;也许是这样的:

map(lambda object:object.method(), list_of_objects)

我很欣赏这方面的一些见解。感谢。

1 个答案:

答案 0 :(得分:4)

如果你需要为每个对象调用方法,第一种方法是正确的。

for object in list_of_objects:
    object.method()

但是假设您希望/需要使用方法中返回的值创建列表,那么您应该使用list-comprehension或map()