課程
/后端開發(fā)
/Python
/Python3 進階教程(新版)
參考答案說,這樣實例變量在外部無法修改__count,但本來count不就無法修改嘛,那__就沒什么用了???不太懂..
2020-10-04
源自:Python3 進階教程(新版) 2-6
正在回答
兩種都沒法修改,但是加了__之后外部就沒法直接Animal.count獲取了,得def get_count(self)
私有屬性雖然沒法被直接修改,可以在類里面定義類方法,如get_count(),或者set_count()用來獲取和修改。保證數(shù)據(jù)的唯一性。
把代碼寫成下方的就能看出區(qū)別來了
class Animal(object):
? ? __count = 0
? ? def __init__(self,name):
? ? ? ? Animal.__count = Animal.__count + 1
? ? ? ? self.name = name
? ? ? ? print('內(nèi)部:{}'.format(Animal.__count))
p1 = Animal('Cat')
p2 = Animal('Dog')
print('外部:{}'.format(Animal.__count))
你打的是一個_吧,兩個_的時候是不能被外部調(diào)用的
幕布斯樂
舉報
學(xué)習(xí)函數(shù)式、模塊和面向?qū)ο缶幊?,掌握Python高級程序設(shè)計
2 回答既然“通過實例是無法修改 類屬性的”, 那么為什么還需要注意“不要通過實例修改類屬性,以免引發(fā)錯誤”?
1 回答子類可以繼承父類的私有屬性和私有方法嗎
2 回答父類調(diào)用子類的屬性?????
5 回答`self.屬性`是起什么意思/作用???為什么要寫這一步?self和name、age同為屬性
1 回答子類能不能只繼承父類的部分屬性?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2022-05-24
兩種都沒法修改,但是加了__之后外部就沒法直接Animal.count獲取了,得def get_count(self)
2022-05-24
私有屬性雖然沒法被直接修改,可以在類里面定義類方法,如get_count(),或者set_count()用來獲取和修改。保證數(shù)據(jù)的唯一性。
2022-05-12
把代碼寫成下方的就能看出區(qū)別來了
class Animal(object):
? ? __count = 0
? ? def __init__(self,name):
? ? ? ? Animal.__count = Animal.__count + 1
? ? ? ? self.name = name
? ? ? ? print('內(nèi)部:{}'.format(Animal.__count))
p1 = Animal('Cat')
p2 = Animal('Dog')
print('外部:{}'.format(Animal.__count))
2022-03-22
你打的是一個_吧,兩個_的時候是不能被外部調(diào)用的
2020-10-17
兩種都沒法修改,但是加了__之后外部就沒法直接Animal.count獲取了,得def get_count(self)