什么是Python文件的常见标题格式?
我在关于Python编码准则的文档中遇到了以下Python源文件头格式:
#!/usr/bin/env python
"""Foobar.py: Description of what foobar does."""
__author__ = "Barack Obama"
__copyright__ = "Copyright 2009, Planet Earth"
这是Python世界中标题的标准格式吗? 我可以在标题中添加哪些其他字段/信息? Python专家分享您的准则,以获得良好的Python源代码头:-)
它的Foobar
模块的所有元数据。
第一个是模块的docstring
,在Peter的回答中已经解释过了。
我如何组织我的模块(源文件)? (归档)
每个文件的第一行应该是#!/usr/bin/env python
。 这使得可以将文件作为隐式地调用解释器的脚本来运行,例如在CGI上下文中。
接下来应该是带有说明的文档字符串。 如果描述很长,那么第一行应该是一个简短的摘要,它本身是有意义的,通过换行符与其余部分分开。
所有代码,包括import语句,都应该遵循文档字符串。 否则,解释器将无法识别文档字符串,并且在交互式会话中(即通过obj.__doc__
)或者使用自动化工具生成文档时,您将无法访问它。
首先导入内置模块,然后导入第三方模块,然后对路径和您自己的模块进行任何更改。 尤其是,模块路径和名称的添加可能会迅速发生变化:将它们保存在一个地方会使它们更容易找到。
接下来应该是作者信息。 这些信息应该遵循以下格式:
__author__ = "Rob Knight, Gavin Huttley, and Peter Maxwell"
__copyright__ = "Copyright 2007, The Cogent Project"
__credits__ = ["Rob Knight", "Peter Maxwell", "Gavin Huttley",
"Matthew Wakefield"]
__license__ = "GPL"
__version__ = "1.0.1"
__maintainer__ = "Rob Knight"
__email__ = "rob@spot.colorado.edu"
__status__ = "Production"
状态通常应该是“原型”,“开发”或“生产”之一。 __maintainer__
应该是修复bug并在导入时进行改进的人员。 __credits__
不同于__author__
在__credits__
包括谁报告bug修复,提出建议等,但实际上并没有写代码的人。
这里有更多信息,列出__author__
__authors__
, __contact__
__copyright__
__license__
, __deprecated__
, __date__
__version__
__author__
, __authors__
__contact__
__copyright__
, __license__
__deprecated__
, __date__
和__version__
作为可识别的元数据。
我强烈支持最小文件头,我的意思是:
#!
行),如果这是一个可执行的脚本 其他一切都是浪费时间,视觉空间,并且是积极的误导。
如果您拥有合法的免责声明或许可信息,它将进入单独的文件。 它不需要感染每个源代码文件。 你的版权应该是这个的一部分。 人们应该能够在你的LICENSE
文件中找到它,而不是随机的源代码。
元数据(如作者身份和日期)已由源代码管理员维护。 没有必要在文件本身中添加相同信息的较不详细,错误和过时的版本。
我不相信每个人都需要在其所有源文件中加入任何其他数据。 您可能会有一些特殊的要求,但根据定义,这些内容仅适用于您。 他们在“为所有人推荐的一般标题”中没有地位。
这是一个很好的开始:PEP 257,其中介绍了Docstrings,并链接到其他几个相关文档。
链接地址: http://www.djcxy.com/p/31803.html