Class attribute là attribute của class chứ không phải instance.
Ví dụ
class MyClass:
class_var = 2 # Class attribute
def __init__(self, i_var):
self.i_var = i_var # Instance attribute
foo = MyClass(3)
baz = MyClass(4)
print(foo.class_var, foo.i_var) # 2 3
print(baz.class_var, baz.i_var) # 2 4
# Truy cập qua class
print(MyClass.class_var) # 2
Kết quả
(2, 3) (2, 4)
Điểm quan trọng: Tất cả instance chia sẻ class_var. Gán foo.class_var = 5 tạo instance attribute mới, không thay đổi class attribute.