ホームページ >バックエンド開発 >Python チュートリアル >Python オブジェクトの属性を動的に設定するにはどうすればよいですか?

Python オブジェクトの属性を動的に設定するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-01 14:39:17584ブラウズ

How Can I Dynamically Set Attributes in Python Objects?

Python で属性を動的に設定する

Python オブジェクト x と文字列 s があるとします。属性に x.myAttr としてアクセスできるように、プログラムで x の属性 s を設定するにはどうすればよいですか?

これを実現するには、次の構文を持つ setattr() 組み込み関数を利用できます。

setattr(object, name, value)

この特定のシナリオでは、次のように使用します。

setattr(x, attr, 'magic')

これは効果的です。オブジェクト x の属性 attr を値 'magic' に設定します。その結果、x.myAttr.

を通じてこの属性にアクセスできるようになりました。このアプローチは、x.__getattr__() への呼び出しをキャッシュする場合に特に便利であることに注意することが重要です。ただし、このメソッドをオブジェクトの純粋なインスタンスに直接適用することはできないことに注意してください。代わりに、オブジェクトのカスタム サブクラスに適用されるのが一般的です。

以上がPython オブジェクトの属性を動的に設定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。