Pythonのクラス変数に値を代入する方法は何ですか?

Pythonにおけるクラス変数の値の代入方法は以下のようにいくつかあります:

  1. クラスの定義内で値を直接設定する:クラスの定義内でクラス変数に直接値を設定することができます。通常、代入文はクラスメソッドの外側に配置されます。
class MyClass:
    class_var = "Hello"

print(MyClass.class_var)  # 输出: Hello
  1. クラス名を使用して動的に値を設定することができます。この方法は、クラスの定義の外部やクラスのメソッド内部で行うことができます。
class MyClass:
    pass

MyClass.class_var = "Hello"
print(MyClass.class_var)  # 输出: Hello
  1. クリア
class MyClass:
    class_var = "Hello"

    @classmethod
    def set_var(cls, value):
        cls.class_var = value

print(MyClass.class_var)  # 输出: Hello
MyClass.set_var("World")
print(MyClass.class_var)  # 输出: World

実例メソッド内でselfを使用してクラス変数にアクセスし、値を代入すると、実際にはインスタンス変数が作成されることに注意が必要です。クラス変数の値を変更するのではなく。

class MyClass:
    class_var = "Hello"

    def set_var(self, value):
        self.class_var = value

obj = MyClass()
print(obj.class_var)  # 输出: Hello
obj.set_var("World")
print(obj.class_var)  # 输出: World
print(MyClass.class_var)  # 输出: Hello
bannerAds