4、單末尾下劃線
5、前導雙下劃線
封裝就是,把屬性和方法都藏起來,不讓你看見
class
animal
: _a =
12345
if __name__ ==
'__main__'
: animal = animal(
)print
(animal._a)
輸出:
12345
def
funa()
:print
("a函式"
)def
_funb()
:print
("b函式"
)
from test import
*if __name__ ==
'__main__'
: funa(
) _funb(
)#這個函式無法被呼叫,會報錯
輸出:
#前導雙下劃無法在外部直接訪問
class
animal
: __a =
12345
if __name__ ==
'__main__'
: animal = animal(
)print
(animal.__dict__)
print
(animal._animal__a)
#名稱修飾後的名字訪問
輸出:
12345
Python學海無涯路 第08回 函式
3 返回值 def test x y 2 x return y呼叫函式時可使用的正式引數型別 引數須以正確的順序傳入函式。呼叫時的數量必須和宣告時的一樣,不然會出現語法錯誤。使用關鍵字引數允許函式呼叫時引數的順序與宣告時不一致,因為 python 直譯器能夠用引數名匹配引數值。如果引數中還有其他引數...
Python學海無涯路 第12回 map函式
將列表中的每個元素加1,可以使用以下方法 usr bin env python coding utf 8 array num 1 2,3 4 定義乙個函式,數字加1 deffunc add x return x 1def map test func,array ret 定義乙個空列表 for i i...
Python學海無涯路 第17回 迭代器
可迭代物件 實現了迭代器協議的物件 迭代器有兩個基本的方法 iter 和 next for迴圈的本質 將物件用 iter 轉換成可迭代物件,呼叫其next 方法。字串 列表 元組 字典 集合 檔案物件,這些都不是可迭代物件,只不過在for迴圈時,呼叫了他們內部的 iter 方法,把它們變成了可迭代物...