魔法屬性和魔法方法
python 中預先定義好了一些以 __***__ 形式的屬性和方法。
這些屬性和方法用來表示特定的意義和功能。
__doc__ 屬性
⁃ 文件字串,docstring 用來對模組,類,方法進行說明的字串
⁃ 可以通過 help 方法在 獲取幫助時自動呼叫
__module__ 、__class__ 、__bases__ 、__mro__ 屬性
⁃ __module__ 屬性用來獲取當前成員屬性哪個模組
⁃ __class__ 屬性用獲取當前物件屬於哪個類
⁃ __bases__ 屬性用來獲取當前類的父類
⁃ __mro__ 屬性用來記錄父類的繼承關係
__init__ 、__new__ 方法
⁃ __init__ 方法用來對類中成員進行初始化,建立物件時自動呼叫
⁃ __new__ 方法是在建立物件時向記憶體中申請空間的方法,在 init 方法執行之前自動呼叫執行
__call__ 方法
⁃ 類中的方法,實現該方法可以讓物件以函式形式進行操作
⁃ 物件呼叫函式的這種形式稱為仿函式
__getitem__ 、 __setitem__ 、__delitem__ 、__len__ 、__str__ 方法
⁃ 實現這幾個 item 方法,可以讓類物件在操作時,使用下標進行操作
⁃ 使用 len 函式時,會呼叫 __len__ 這個方法
⁃ __str__ 方法是 python 提供的一種讓使用者自定義物件顯示形式的介面
Python 高階 魔法屬性
1.doc class foo 檢視說明資訊 def func self pass print foo.doc 輸出結果 檢視說明資訊learn 26 2 magic test.py 2.module 表示當前操作的物件在哪個模組 class 表示當前操作的物件的類是什麼 class person ...
Python高階 魔法屬性和方法
1.doc 表示類的描述資訊 2.module 和 class 當前操作物件所屬的模組和類 3.init 初始化方法,類建立物件時,自動觸發執行 4.del 物件在記憶體中釋放時,自動觸發執行 5.call 物件後加括號 物件 自動觸發執行 6.dict 類或物件中的所有屬性 7.str 列印物件時...
Python高階筆記(七)魔法屬性
注意 init 方法的執行是由建立物件觸發的,即 物件 類名 而對於 call 方法的執行是由物件後加括號觸發的,即 物件 或者 類 類的例項屬性屬於物件 類中的類屬性和方法等屬於類 encoding utf 8 class foo object country douzi def init sel...