Python: 文字列からクラスプロパティにアクセスする [重複] 質問する

Python: 文字列からクラスプロパティにアクセスする [重複] 質問する

次のようなクラスがあります。

class User:
    def __init__(self):
        self.data = []
        self.other_data = []

    def doSomething(self, source):
        // if source = 'other_data' how to access self.other_data

ソース変数に文字列を渡しdoSomething、同じ名前のクラス メンバーにアクセスしたいと思います。

getattr私は、関数でのみ機能する which (私の知る限り) とUserextenddictおよび using を試しましたself.__getitem__が、どちらも機能しません。これを行うための最良の方法は何ですか?

ベストアンサー1

x = getattr(self, source)source例のを含む、self の任意の属性に names を指定すると、完璧に機能しますother_data

おすすめ記事