Python 変数の割り当て
Python では「変数宣言」という用語が使用されないことを理解することが重要です。代わりに、変数はオブジェクトに名前を与えるだけの代入によって作成されます。
クラス属性の割り当て
クラス本体内の変数はクラス属性とみなされ、すべての間で共有されます。
<code class="python">class Writer: path = "" customObj = CustomType() # Create variable to hold custom type object</code>
インスタンス属性の割り当て
属性は、__init__() メソッドを使用するか、インスタンスに直接割り当てることによって、個々のインスタンスに割り当てることもできます。属性:
<code class="python">def __init__(self, path, customObj): self.path = path self.customObj = customObj # Assign custom type object to instance instance = Writer("/my/path", CustomType())</code>
Python のオブジェクトを理解する
Python では、クラスはオブジェクトであり、変数はオブジェクトを参照する名前です。クラス属性はクラス オブジェクトに存在しますが、インスタンス属性は個別のインスタンスに作成および保存されます。
インスタンス属性への割り当て
インスタンス属性に割り当てるとき、Python は次のチェックを行います。まずインスタンス。属性がインスタンスに存在しない場合は、クラスが検索されます。ただし、インスタンス属性に加えられた変更は、元のクラス属性を保持したまま、その特定のインスタンスにのみ影響します。
リストとミューテーション
への代入は次のことに注意することが重要です。 list オブジェクトは新しいリストを作成するのではなく、既存のリストを変更します。したがって、1 つのインスタンスでリスト属性に加えられた変更は、同じリスト属性を使用する他のすべてのインスタンスで表示されます。
結論
要約すると、Python はへの代入を利用します。変数を作成および変更します。クラス属性とインスタンス属性は、カスタム オブジェクトを含むさまざまなタイプのデータを保持するように宣言できます。クラスやインスタンス内でデータを効果的に管理するには、Python のオブジェクト属性の階層的性質を理解することが重要です。
以上がPython での変数の割り当てはどのように機能しますか: クラス、インスタンス、オブジェクト参照?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。