日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

python 类变量(属性)和实例变量(属性

發(fā)布時(shí)間:2023/12/20 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 类变量(属性)和实例变量(属性 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

DAY 4. 類變量(屬性)和實(shí)例變量(屬性)

  • 類變量:在所有類的實(shí)例之間都可以共享的變量,類變量在所有對(duì)象間只保留一份
    • 在類體中定義
    • 類的所有實(shí)例對(duì)象都可以訪問(wèn)類變量
    • 類變量只能由類修改,實(shí)例對(duì)象只有讀權(quán)限
    • 使用對(duì)象名.類變量名 = new value不是在使用對(duì)象修改類屬性,而是給對(duì)象添加了一個(gè)新屬性
class Demo:# 類變量classVar = 0def __init__(self):self.instanceVar = 1if __name__ == '__main__':demo1 = Demo()demo2 = Demo()# 類的所有實(shí)例對(duì)象都可以訪問(wèn)類變量print(demo1.classVar) # 0print(demo2.classVar) # 0# 由類修改類變量Demo.classVar = 2print(demo1.classVar) # 2print(demo2.classVar) # 2# 注意,這樣不是在修改類變量,而是給實(shí)例對(duì)象添加了一個(gè)屬性demo1.classVar = 2print(demo1.classVar) # 2
  • 實(shí)例變量:實(shí)例化對(duì)象時(shí),每個(gè)對(duì)象都會(huì)有自己的實(shí)例變量,各實(shí)例變量之間不影響
    • 在構(gòu)造函數(shù)中定義
    • 實(shí)例變量由實(shí)例對(duì)象修改,類修改實(shí)例變量沒(méi)意義
    • 每個(gè)實(shí)例對(duì)象有一份實(shí)例變量
class Demo:# 類變量classVar = 0def __init__(self):# 實(shí)例變量self.instanceVar = 1if __name__ == '__main__':print(demo1.instanceVar) # 1print(demo2.instanceVar) # 1# 各實(shí)例對(duì)象間的實(shí)例變量互相不影響demo1.instanceVar = 2print(demo1.instanceVar) # 2print(demo2.instanceVar) # 1# 用類修改實(shí)例變量沒(méi)意義Demo.instanceVar = 2print(demo1.instanceVar) # 2print(demo2.instanceVar) # 1

4.1 總結(jié)

變量(屬性)定義讀取修改內(nèi)存
類變量在類體中定義className.classVar和objectName.classVarclassName.classVar = new value只保留一份
實(shí)例變量在構(gòu)造函數(shù)中定義objectName.instanceVarobjectName.instanceVar = new value每個(gè)實(shí)例對(duì)象保存一份,各對(duì)象間互不影響

**注意:**使用objectName.classVar = new value是給對(duì)象添加了一個(gè)新屬性

參考文章:

GitHub 關(guān)于python的面試題

python(類和對(duì)象之類屬性和類變量)

圖解Python 【第五篇】:面向?qū)ο?類-初級(jí)基礎(chǔ)篇

總結(jié)

以上是生活随笔為你收集整理的python 类变量(属性)和实例变量(属性的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。