Python高階 魔法屬性和方法

2021-08-28 02:17:31 字數 786 閱讀 6298

1.__doc__:表示類的描述資訊

2.__module__和__class__:當前操作物件所屬的模組和類

3.__init__:初始化方法,類建立物件時,自動觸發執行

4.__del__:物件在記憶體中釋放時,自動觸發執行

5.__call__:物件後加括號(物件()),自動觸發執行

6.__dict__:類或物件中的所有屬性

7.__str__:列印物件時,預設輸出該方法的返回值

8.__getitem__,__setitem__和__delitem__:用於索引操作,分別表示獲取,設定和刪除

例:

class

foo(object):

def__getitem__

(self, key):

print('__getitem__', key)

def__setitem__

(self, key, value):

print('__setitem__', key, value)

def__delitem__

(self, key):

print('__delitem__', key)

obj = foo()

result = obj['k1'] # 自動觸發執行 __getitem__

obj['k2'] = 'laotie'

# 自動觸發執行 __setitem__

del obj['k1'] # 自動觸發執行 __delitem__

python 高階 魔法屬性和 魔法方法

魔法屬性和魔法方法 python 中預先定義好了一些以 形式的屬性和方法。這些屬性和方法用來表示特定的意義和功能。doc 屬性 文件字串,docstring 用來對模組,類,方法進行說明的字串 可以通過 help 方法在 獲取幫助時自動呼叫 module class bases mro 屬性 mod...

Python 高階 魔法屬性

1.doc class foo 檢視說明資訊 def func self pass print foo.doc 輸出結果 檢視說明資訊learn 26 2 magic test.py 2.module 表示當前操作的物件在哪個模組 class 表示當前操作的物件的類是什麼 class person ...

Python高階筆記(七)魔法屬性

注意 init 方法的執行是由建立物件觸發的,即 物件 類名 而對於 call 方法的執行是由物件後加括號觸發的,即 物件 或者 類 類的例項屬性屬於物件 類中的類屬性和方法等屬於類 encoding utf 8 class foo object country douzi def init sel...