ホームページ  >  記事  >  バックエンド開発  >  Pythonのクラス変数とインスタンス変数の違い

Pythonのクラス変数とインスタンス変数の違い

(*-*)浩
(*-*)浩オリジナル
2019-07-05 10:55:285778ブラウズ

Python チュートリアルでは、クラス変数とインスタンス変数は次のように説明されます。

Pythonのクラス変数とインスタンス変数の違い

 Generally speaking, instance variables are for data unique to each instance and class variables are for attributes and methods shared by all instances of the class:

一般的に、インスタンス変数は、データごとに定義されます。は各インスタンスに固有ですが、クラス変数はクラスのすべてのインスタンスで共有されるプロパティとメソッドです。 (推奨される学習: Python ビデオ チュートリアル )

両者の違いは、インスタンス変数はそのオブジェクトが属するオブジェクトにプライベートであるのに対し、クラス変数はすべてのオブジェクトに共通であることです。オブジェクト

クラス変数は、クラスの特性であるグローバル変数とも呼ばれます。インスタンスは、最初にインスタンス化変数を探し、次にクラス変数を探します。ただし、インスタンス変数は、インスタンス化変数ですが、クラス変数を使用してインスタンスを見つけることもできます。呼び出します。クラス変数に複数の継承関係がある場合、指定されたルートに従って検索する必要があります。最初にコードを見て理解しましょう

class A:
    aa=10
    def __init__(self,a,b):
        self.a=a
        self.b=b
a=A(5,20)

print(a.a)  #实例变量
print((a.aa))#实例读取类变量

#打印结果 
5
10

Python関連の技術記事をもっと知りたい方はPythonチュートリアルをご覧ください 学びのコラム!

以上がPythonのクラス変数とインスタンス変数の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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