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

2022-02-27 10:16:38 字數 2474 閱讀 8410

注意:__init__方法的執行是由建立物件觸發的,即:物件 = 類名();而對於 __call__ 方法的執行是由物件後加括號觸發的,即:物件() 或者 類()()

類的例項屬性屬於物件; 類中的類屬性和方法等屬於類

#

-*- encoding=utf-8 -*-

class

foo(object):

country = "

douzi

"def

__init__

(self, name, count):

self.name =name

self.count =count

def func(self, *args, **kwargs):

print("

func")

#獲取類的屬性,即:類屬性,方法

print(foo.__dict__)#

獲取物件obj1的屬性

obj1 = foo("

test

", 134)

print(obj1.__dict__)

class

foo(object):

def__str__

(self):

return

"douzi

"t =foo()

print(t)

douzi

class

foo(object):

def__getitem__

(self, item):

print("

__getitem__:

", item)

def__setitem__

(self, key, value):

print("

__setitem__:

", key, value)

def__delitem__

(self, key):

print("

__delitem__:

", key)

obj =foo()

res = obj["

k1"] #

自動觸發執行 __getitem__

obj["

k2"] = "

douzi"#

自動觸發執行 __setitem__

del obj["

k1"] #

自動觸發執行 __delitem__

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 高階 魔法屬性和 魔法方法

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