【发布时间】:2010-10-15 05:27:33
【问题描述】:
我有一个对象列表。对象有 3 个字符串属性。我想制作一个仅包含类中特定属性的列表。
有没有内置函数可以做到这一点?
【问题讨论】:
标签: python
我有一个对象列表。对象有 3 个字符串属性。我想制作一个仅包含类中特定属性的列表。
有没有内置函数可以做到这一点?
【问题讨论】:
标签: python
假设您想要字段 b 用于名为 objects 的列表中的对象,请执行以下操作:
[o.b for o in objects]
【讨论】:
我想到的第一件事:
attrList = map(lambda x: x.attr, objectList)
【讨论】:
你在寻找这样的东西吗?
[o.specific_attr for o in objects]
【讨论】:
列表推导可以正常工作:
[o.my_attr for o in my_list]
但是有一个内置函数的组合,因为你问:-)
from operator import attrgetter
map(attrgetter('my_attr'), my_list)
【讨论】:
o["myattr"],您可能会从对象结构中推断出它。这是正确的方法。