getattr() とは何ですか?とその使用方法
オブジェクトから属性を取得することは、Python プログラミングでは一般的な方法です。ドット表記を使用して属性に直接アクセスするのは便利ですが、属性名が動的に保存されているか、事前に不明である状況が発生する可能性があります。ここで getattr() 関数が登場します。
getattr() について
getattr() は、属性値を取得できる組み込みの Python 関数です。名前が文字列として指定された場合、オブジェクトから取得されます。 3 つの引数を取ります:
getattr() の使用法
getattr() は、次の場合に特に役立ちます。
たとえば、属性名を持つ Person オブジェクトを考えてみましょう。および性別:
class Person: name = 'John' gender = 'Male'
を使用して name 属性にアクセスするにはgetattr():
name = getattr(person, 'name')
これは次と同等です:
name = person.name
ただし、getattr() は属性名がコンパイル時に不明な場合 (保存時など) に役立ちます。変数内:
attr_name = 'gender' gender = getattr(person, attr_name)
注: getattr() はデフォルト値が 3 番目の引数として指定されない限り、属性が存在しない場合は AttributeError。
その他のアプリケーション
getattr() には、属性の取得以外にも次のようなアプリケーションがあります。
for attr in dir(obj): value = getattr(obj, attr)
test_methods = [ getattr(obj, attr) for attr in dir(obj) if attr.startswith('test') ]
結論
getattr() は、オブジェクトからプログラムによる属性の取得を可能にする多用途関数です。そのユースケースは、動的に保存された属性へのアクセスからオブジェクトの動的探索まで多岐にわたります。その使用法を理解すると、Python でオブジェクトを操作する際の柔軟性と制御が向上します。
以上がPython の「getattr()」関数とは何ですか?またその使用方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。