第四十節 類變量Class Variables
- 前言
- 實踐
前言
通過上一節學習我們知道Python中的類由兩部分構成,屬性(變量)和方法(函數)。這一節我們進一步學習屬性。屬性分為兩部分,一部分定義在
__init__
函數之外,這裡指定所有這個類的對象共有的屬性,例如汽車都有4個輪子等等,而
__init__
内部定義的屬性用于差別不同的對象,例如汽車的顔色,汽車的價格等等。
class 對象():
公共屬性定義
def __init__(self, 屬性1, 屬性2, ..., 屬性n):
self.屬性1 = 屬性1
......
self.屬性n = 屬性n
實踐
我們以汽車為例講解類變量,首先定義一個名為
Car
的類:
class Car():
wheels = 4
def __init__(self, price, color):
self.price = price
self.color = color
可見
wheels=4
指明所有汽車都有4個輪子這個公共屬性,而
__init__
函數内定義的是在類執行個體化時需要指定的其他屬性。我們接下來執行個體化兩個對象:
car_1 = Car(15000, "red")
car_2 = Car(15030, "green")
這裡我們執行個體化了兩個汽車對象,我們來檢視一下他們的公共屬性是否相同:
print(car_1.wheels)
print(car_2.wheels)
>>> 4
>>> 4
我們在類執行個體化之後,可以在類的外部重新指定公共屬性的值:
Car.wheels = 2
print(car_1.wheels)
print(car_2.wheels)
>>> 2
>>> 2
可見此時所有對象的
wheels
取值都變為了2。那是否分别修改每一個對象的公共屬性取值呢?
car_1.wheels = 2
print(car_1.wheels)
print(car_2.wheels)
>>> 2
>>> 4
可見,我們可以直接修改對象的公共屬性取值。
以上便是類變量的全部内容,感謝大家的收藏、點贊、評論。我們下一節将介紹繼承(Inheritance),敬請期待~