要定義一個類變量,可以在類的內部直接賦值給一個變量,例如:
class MyClass:
class_variable = 10
要使用類變量,可以通過類名或實例對象來訪問它,例如:
print(MyClass.class_variable) # 輸出:10
my_object = MyClass()
print(my_object.class_variable) # 輸出:10
類變量是類的所有實例對象共享的,所以無論通過類名還是實例對象訪問類變量,都會得到相同的值。如果某個實例對象修改了類變量的值,那么這個修改會影響到其他所有實例對象。例如:
my_object = MyClass()
print(my_object.class_variable) # 輸出:10
my_object.class_variable = 20
print(my_object.class_variable) # 輸出:20
another_object = MyClass()
print(another_object.class_variable) # 輸出:10
在上面的示例中,my_object
修改了 class_variable
的值為 20,但是 another_object
的 class_variable
的值仍然是 10。這是因為 my_object.class_variable = 20
實際上是給 my_object
創建了一個實例變量,它會覆蓋類變量的值。如果想要修改類變量而不是創建一個實例變量,可以通過類名來修改,例如:
MyClass.class_variable = 20
print(my_object.class_variable) # 輸出:20
print(another_object.class_variable) # 輸出:20