2
例如,我定義一個類:Python中__name__的搜索屬性策略如何與正常策略不同?
class Test(object):
pass
print dir(Test)
得到以下結果:
['__class__','__delattr__','__dict__','__doc__','__format__','__getattribute__', '__hash__', '__init__', '__module__', '__new__','__reduce__','__reduce_ex__', '__repr__','__setattr__','__sizeof__','__str__','__subclasshook__','__weakref__']
打印測試。 名流汗以下結果: 測試
我的問題是在測試沒有名,爲什麼可以打印測試。 名稱,名稱的搜索策略是什麼?
任何答案將不勝感激,謝謝!
不會函數dir()列出對象從其基類中定義或繼承的所有屬性嗎? – MayflowerYuan
是的所有在它的基類上定義的屬性。然而,dir(Test)正在返回'class'對象的屬性。 'class'本身本身沒有「基類」,只是一個元類'type'。 –
哦,我明白,dir()不會列出其基類中的所有屬性。當您測試.__ name__時,屬性搜索策略將逐漸轉到__name__的基類。非常感謝@Sebastian Wozny – MayflowerYuan