ホームページ >バックエンド開発 >Python チュートリアル >Python の「setattr()」関数はどのようにオブジェクトに属性を割り当てるのでしょうか?

Python の「setattr()」関数はどのようにオブジェクトに属性を割り当てるのでしょうか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-01 09:35:10310ブラウズ

How Does Python's `setattr()` Function Assign Attributes to Objects?

Python での属性割り当て: setattr() の探索

x という名前の Python オブジェクトと s という文字列を所有するシナリオを想像してください。目的は、プログラムによって属性 s をオブジェクト x に割り当て、x.myAttr へのアクセスを可能にし、その値 'magic' を取得することです。

秘密は setattr() 関数にあります:

setattr(x, attr, 'magic')

この関数は 3 つの引数を取ります:

  • object: 属性を変更するオブジェクトof.
  • name: 設定する属性の名前。
  • value: 属性に割り当てられる値。

setattr( x, attr, 'magic')、オブジェクト x の属性 myAttr を効果的に値に設定します。 'magic'.

さらに詳しくは、ヘルプ機能を参照してください。

>>> help(setattr)
Help on built-in function setattr in module __builtin__:

setattr(...)
    setattr(object, name, value)
    
    Set a named attribute on an object; setattr(x, 'y', v) is equivalent to
    ``x.y = v''.

この手法はオブジェクト クラスの純粋なインスタンスには適用できない可能性があることに注意してください。ただし、多くの場合、オブジェクトのサブクラスで使用すると便利です。それにもかかわらず、オブジェクトの純粋なインスタンスを作成することは一般的に推奨されません。

以上がPython の「setattr()」関数はどのようにオブジェクトに属性を割り当てるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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