python例項屬性的顯示方法-dir、__dict__
在測試例項的屬性時,產生過一個誤解。
class Test(): name = 'python' def printest(): print 'Test'a = Test()print dir(a)print a.__dict__
其中dir(a)列印出的內容為:['doc', 'module', 'name', 'printest']
其中a.dict列印出的內容為:{}
之前誤以為dir(a)為例項a的已有屬性,實際dir的含義是:它返回一個列表,包含所有能找到的屬性的名字,即返回類及其子類的屬性、方法列表。比如a的類是Test,name實際是類屬性。
而dict的含義是:這個屬性就是將物件內的屬性和值用字典的方式顯示出來。注意此處說的是物件,此時的物件是a,而例項a本身是沒有任何屬性的,所以打出來是{}。(可以使用a.name訪問是由於向上查詢的原因)
比如給a設定屬性後,再檢視兩個函式的列印。
class Test(): name = 'python' def __init__(self): self.lastname = 'tttt' def printest(): print 'Test'a = Test()a.firstname = 'hhh'print dir(a)print a.__dict__
列印輸出是這樣的:
['doc', 'init', 'module', 'firstname', 'lastname', 'name', 'printest']
{'lastname': 'tttt', 'firstname': 'hhh'}
可以看到此時已經有了例項屬性。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3016/viewspace-2802860/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python的dir()和__dict__屬性的區別Python
- Python 動態新增例項屬性,例項方法,類屬性,類方法Python
- Python 類的屬性與例項屬性Python
- vue例項的屬性和方法Vue
- 理解Python中的類物件、例項物件、屬性、方法Python物件
- HTML dir 屬性HTML
- Python類屬性和例項屬性分別是什麼?Python
- Python例項屬性的優先順序分析Python
- JavaScript 例項屬性JavaScript
- Python __dict__屬性:檢視物件內部所有屬性名和屬性值組成的字典Python物件
- Python - 物件導向程式設計 - 類變數、例項變數/類屬性、例項屬性Python物件程式設計變數
- 描述符:例項屬性遮蓋方法的原因
- [轉載] python複數型別-Python 複數屬性和方法操作例項Python型別
- 關於python類屬性和例項屬性的一些細節注意點Python
- vue例項中watch屬性的使用Vue
- 零基礎學習 Python 之細說類屬性 & 例項Python
- python例項方法中self的作用Python
- Linux下設定終端文字的顯示屬性Linux
- 教你如何直接訪問php例項物件的private屬性PHP物件
- python呼叫私有屬性的方法總結Python
- php例項化物件的例項方法PHP物件
- 關於input 中 hidden屬性在後臺作用的例項
- python中time庫的例項使用方法Python
- Python中的私有屬性與私有方法Python
- 深入理解JavaScript類與物件:揭秘類欄位和靜態屬性的妙用,js靜態屬性和例項屬性JavaScript物件JS
- jQuery控制div顯示和隱藏程式碼例項jQuery
- Winform窗體的屬性頁沒有顯示篩選框ORM
- 舉例說明常用的BOM屬性和方法有哪些?
- Swagger中配置了@ApiModelProperty的allowableValues屬性但不顯示的問題SwaggerAPI
- Python 簡明教程 --- 20,Python 類中的屬性與方法Python
- python呼叫方法必須例項化麼Python
- python屬性和方法的區別是什麼Python
- Python中的屬性Python
- YII2連線左表子屬性不顯示
- python中類和物件的__dict__Python物件
- 對CXListCtrl的項ComboBox顯示值改變的響應方法
- python 呼叫 cmd 而不顯示黑框的方法Python
- 【Python】Python方法求水仙花數原碼例項Python