每个文件的第一行应该是 #!/usr/bin/env python
。 这样可以将该文件作为脚本隐式地调用解释器,例如在 CGI 上下文中运行。
接下来应该是具有描述的docstring。 如果描述很长,则第一行应该是一个独立的简短摘要,通过换行符与其余部分分开。
包括导入语句在内的所有代码都应跟随在docstring之后。 否则,解释器将不会识别该docstring,并且您将无法在交互会话中访问它(即通过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__
应该是导入后将修复错误和进行改进的人。 __credits__
与 __author__
不同,它包括报告 bug 修复,提出建议等但实际上没有编写代码的人。
这里有更多信息,列出了被认可的元数据,如__author__
,__authors__
,__contact__
,__copyright__
,__license__
,__deprecated__
,__date__
和__version__
。