2010-09-03 89 views
15

這是我的理解,一個模塊docstring應該只是提供一個模塊的一般描述和作者和版本的細節應該只包含在模塊的評論。Python模塊註釋是否有約定?

不過,我已經看到了以下的評論文檔字符串:

__author__ = "..." 
__version__ = "..." 
__date__ = "..." 

哪裏放物品,如這些正確的位置?其他__[name]__變量是常見的列表模塊的頂部?

回答

8

他們僅僅是慣例,雖然相當廣泛使用的約定。請參閱一組Python元數據要求中的this description

__version__Python Style Guide中被提及。

關於docstrings,有PEP just for you

用於模塊的文檔字符串應該 通常列出類,異常 和功能(以及任何其他對象) 由模塊導出,與 每個的一行摘要。 (這些 摘要通常得到較少的細節 比在對象的 文檔字符串的概要線。)用於 包中的文檔字符串(即, 包的初始化的.py模塊的文檔字符串)應該 還列出模塊和子包由包導出的 。

3

我建議不要擔心__author__,__version__等。這些屬性由任何體面的版本控制系統處理。只有在需要在生產系統上擁有該信息的情況下才能添加它們,而源代碼已經從版本控制系統中導出。

+1

但PEP 8說: 如果您必須在您的源文件中包含Subversion,CVS或RCS crud,請按照以下步驟操作。 __version__ =「$ Revision:84354 $」 #$源$ 這些行應該包含在模塊的文檔字符串之後,在任何其他代碼之前,由上面和下面的空行分隔。 – 2010-09-03 13:15:31

5

你可以看看:

+0

AA!你剛纔竊取我的答案! :) – 2010-09-03 13:11:46