在有关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模块的所有元数据。
Foobar
第一个是docstring模块的,已经在Peter的答案中进行了解释。
docstring
如何组织模块(源文件)?(存档) 每个文件的第一行应为#!/usr/bin/env python。这样就可以将文件作为脚本运行,例如在CGI上下文中隐式调用解释器。 接下来应该是带有说明的文档字符串。 如果描述很长,则第一行应该是一个简短的摘要,该摘要应具有其自身的意义,并以换行符分隔其余部分。 所有代码,包括导入语句,都应遵循文档字符串。 否则,解释器将无法识别该文档字符串,并且您将无法在交互式会话中(即通过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__,这些__credits__人报告了错误修复,提出了建议等,但实际上并未编写代码。
如何组织模块(源文件)?(存档)
每个文件的第一行应为#!/usr/bin/env python。这样就可以将文件作为脚本运行,例如在CGI上下文中隐式调用解释器。
#!/usr/bin/env python
接下来应该是带有说明的文档字符串。 如果描述很长,则第一行应该是一个简短的摘要,该摘要应具有其自身的意义,并以换行符分隔其余部分。
所有代码,包括导入语句,都应遵循文档字符串。 否则,解释器将无法识别该文档字符串,并且您将无法在交互式会话中(即通过obj.__doc__)或使用自动化工具生成文档时访问该文档字符串。
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__,这些__credits__人报告了错误修复,提出了建议等,但实际上并未编写代码。
__maintainer__
__credits__
__author__
在这里你有更多的信息,上市__author__,__authors__,__contact__,__copyright__,__license__,__deprecated__,__date__和__version__作为公认的元数据。
__authors__
__contact__
__copyright__
__license__
__deprecated__
__date__
__version__