色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

python 類公有變量

吉茹定2年前10瀏覽0評論

Python語言中,變量除了可以定義在函數內部和全局變量外,還可以定義在類中,即成員變量。

class Person:
name = '張三'
age = 18

上述代碼中,我們定義了一個Person類,其中name和age為類的成員變量。這些成員變量可以通過類名直接訪問,也可以通過實例對象進行訪問。

p = Person()
print(p.name) # 輸出 '張三'
print(Person.age) # 輸出 18

但是需要注意的是,成員變量可以被所有實例對象共享,也就是說,一個對象對成員變量的修改會影響到其他對象。

p1 = Person()
p2 = Person()
print(p1.age) # 輸出 18
print(p2.age) # 輸出 18
p1.age = 20
print(p1.age) # 輸出 20
print(p2.age) # 輸出 20

上述代碼中,我們分別創建了兩個Person實例對象p1和p2,它們的age成員變量都是18。但是當我們修改p1的age成員變量為20后,p2的age成員變量也成了20。這是因為p1和p2共享了Person類的成員變量。

如果我們想要讓每個實例對象擁有自己的成員變量,可以通過構造函數來實現:

class Person:
def __init__(self, name, age):
self.name = name
self.age = age

構造函數會在實例對象創建時被調用,傳入的參數會被賦值給構造函數中定義的成員變量。

p1 = Person('張三', 18)
p2 = Person('李四', 20)
print(p1.age) # 輸出 18
print(p2.age) # 輸出 20
p1.age = 21
print(p1.age) # 輸出 21
print(p2.age) # 輸出 20

上述代碼中,我們創建了兩個Person實例對象p1和p2,并分別傳入不同的參數。每個實例對象擁有自己的成員變量,因此當我們修改p1的age成員變量為21后,p2的age成員變量并未受到影響。

最后需要注意的是,類的成員變量是公有的,可以被任何地方訪問和修改。因此在實際開發中,需要注意成員變量的命名和使用,避免出現不必要的問題。