1.訪問屬性
python中預設物件的屬性和方法都是公開的,可直接通過點操作符(.)來進行訪問;
為了實現私有的特徵,在python中只需在變數名或函式名前加上"__"(兩個下劃線),則該變數或者該函式變為私有的。
#公有和私有
class
person:
name="小賈"
__id="1"
defsetname(self,name):
self.name=name
p=person()
(p.name)
p.setname("小吳
(p.name)
print(p.__id)
執行結果:
小賈小吳traceback (most recent call last):
file
"d:\pythonworkspace\.vscode\test.py
", line 228, in
print(p.__id
)attributeerror:
'person
' object has no attribute '
__id
'
可以看到,無法直接訪問到id,id為私有變數.
但是python這個其實是偽私有,僅僅是把下劃線開頭的變數改名而已。通過"_類名__變數名"仍然可以訪問:
print(p._person__id)
2.類、類物件、例項物件
注意:類中定義的屬性是靜態變數!!!
為什麼要加self引數呢?
self引數傳入的第乙個就是例項物件。
Python學習筆記 類,類物件,例項物件
1 self 當例項方法被呼叫時,物件會將自身self作為第乙個引數傳入。所以在定義時需要將self寫入,在呼叫時不用寫。2 公有 私有 python的屬性和方法預設都是公有的,可以通過 訪問到,通過在屬性名前可以加上雙下劃線可以將其偽私有化,這樣只能通過類的方法來訪問了,為什麼是偽呢,因為pyth...
Python學習筆記 類與物件
基於python3版本的學習。生活中我們所說的類,是物以類聚的類,是分門別類的類,是多個類似事物組成的群體的統稱。而在python中我們所遇到的類 class 比如整數 字串 浮點數等,不同的資料型別就屬於不同的類。準確來說,它們的全名是整數類 字串類 浮點數類。每乙個類之下都包含無數相似的不同個例...
Python學習筆記 (類與物件)
1.類與物件 物件導向程式設計語言類 乙個模板,人類 是乙個抽象的,沒有實體的物件 eg 張三,李四 屬性 表示這類東西的特徵,眼睛,嘴巴,鼻子 方法 表示這類物體可以做的事情,eg 吃飯,睡覺,學習 2.定義類 使用class 3.python 的魔法方法 init self param1,par...