2011-04-26 41 views
2

在蟒蛇__doc__文檔例如,我知道我應該記錄這樣的實例變量:Python中得到變量

self.x = 22 
"""docstring for x""" 

#: docstring for x 
self.x = 22 
self.x = 22 #: docstring for x 

,但我似乎無法找到一種方式來獲得該文件的保持在碼。 MyClass.x.__doc__給我的實際類型,它是在x

的文檔,這樣的問題是:我如何從self.x"docstring for x"

+0

有對Python源代碼解析器,讓您通過自己的分析序列順序代碼項目相關聯的。雖然不重要,但這仍然可以將前面的文檔行與以下任何代碼構造(例如實例變量賦值)相關聯。我不知道任何工具或庫實現這一點,雖然。 – Petri 2015-04-30 06:10:20

回答

7

這是文檔實用程序的一個功能,如Sphinx和Epydoc,而不是Python的標準功能。我不相信有任何直接的方法來獲取變量文檔。

http://epydoc.sourceforge.net/manual-docstring.html#variable-docstrings

+1

@Waldo Bronchart:鏈接目標的variable-docstrings部分的最後一行顯示爲不完整:「請注意,變量docstrings僅在源代碼可用於解析時可用於文檔:無法檢索變量」。如果完成,它可能會像「......不可能在運行時檢索變量文檔字符串」。 – martineau 2011-04-26 16:48:27

6

PEP 257,實例變量應該在類的文檔字符串進行記錄:

一類的文檔字符串應該總結它的行爲,並列出公共方法和實例變量。

只是在初始化實例變量後編寫docstring不會給你任何方式來訪問它。