1. ホーム
  2. list

[解決済み] Pythonでオブジェクトのリストから属性のリストを抽出する

2023-02-27 12:35:49

質問

私は ユニフォーム のリストがあります。

class myClass(object):
    def __init__(self, attr):
        self.attr = attr
        self.other = None

objs = [myClass (i) for i in range(10)]

ここで、そのクラスの属性(仮にattrとします)を持つリストを取り出して、何らかの関数(例えばデータをプロットするためのもの)に渡したいのです。

これを行うためのpythonicな方法は何でしょうか。

attr=[o.attr for o in objsm]

?

リストを派生させ、それにメソッドを追加することで、以下のようなイディオムを使うことができるかもしれません。

objs.getattribute("attr")

?

どのように解決するのですか?

書くこともできます。

attr=(o.attr for o in objsm)

このようにして、メモリを節約するジェネレータを得ることができます。より多くの利点については ジェネレータ式 .