1. 程式人生 > 實用技巧 >python中的類變數

python中的類變數

  • 類變數:
    • 即類使用的變數,類方法以及建構函式以外的變數
    • 其值的修改有兩種情況
      1. 通過呼叫 類名.變數名 來修改
        其效果是:使得類的變數被修改,後續新建立的物件的類變數名就會是修改後的值。
        可以使用的場景:比如:用在初始化裡面,每新建一個物件(初始化一次的時候),使類變數+1,就可以通過 類名.變數名 來檢視此類被例項化的物件數量
      2. 通過物件內修改。
        其效果與 例項物件(self.變數) 的效果一樣。每次都是初始化後的,不會影響到其他物件。
class Kls(object):
    no_inst = 0  # 定義類變數
    def __init__(self):
        Kls.no_inst = Kls.no_inst + 2  # 類變數可以通過初始化時候,修改類變數的值。後續的其他例項中的此變數的值就被修改了

ik = Kls()
print(f'初始化,通過類名修改後的值:{ik.no_inst}')
ik.no_inst = 3
print(f'物件內修改後的值:{ik.no_inst}')

Kls.no_inst = 8  # 通過呼叫類名直接修改類變數的值
ik2 = Kls()
print(f'通過類名修改後,加上初始化修改後的值:{ik2.no_inst}')

輸出:

初始化,通過類名修改後的值:2
物件內修改後的值:3
通過類名修改後,加上初始化修改後的值:10