私はオブジェクトのリストを持っています。オブジェクトには3つの文字列属性があります。クラスからの特定の属性のみを含むリストを作成したいと思います。オブジェクトのリストから特定の属性のリストを抽出するにはどうすればよいですか?
これを実行する組み込み関数はありますか?
が[o.b for o in objects]
私はオブジェクトのリストを持っています。オブジェクトには3つの文字列属性があります。クラスからの特定の属性のみを含むリストを作成したいと思います。オブジェクトのリストから特定の属性のリストを抽出するにはどうすればよいですか?
これを実行する組み込み関数はありますか?
が[o.b for o in objects]
リストの内包はうまく動作します:私はあなたが意味するものと仮定し
[o.my_attr for o in my_list]
をしかし、あなたが:-)
from operator import attrgetter
map(attrgetter('my_attr'), my_list)
あなたがこれを行うobjects
を名前付きリスト内のオブジェクトのフィールドb
をしたいと仮定すると、 ?
[o.specific_attr for o in objects]
を尋ねるため、組み込み関数の組み合わせは、そこにあります[オブジェクト内のoのためのob]。 –
私の心に来た最初の事:
attrList = map(lambda x: x.attr, objectList)
ラムダの何が問題なのですか? –
は、あなたがこのような何かを探している
優れています。ありがとうございました! –
これは、インポートする必要がある場合は組み込みではありません。 ;)http://docs.python.org/library/functions.html – SilentGhost
私はニュアンスを嘆いています: "組み込み"!= "__builtins__"それは私の話です。 ) –