繁体   English   中英

Python PEP 8:模块开头的空行

[英]Python PEP 8: Blank lines at the beginning of a module

有一个问题是谁对此有所了解,但没有谈论我感兴趣的所有要点。

PEP 8说明了空白行:

Separate top-level function and class definitions with two blank lines.

如果你有:

  1. 只有一个类的模块:

     # -*- coding: utf-8 -*- class A(object): pass 

    你是否用两个空白行分隔了类的开头和编码注释?

  2. 带有import语句和类的模块:

     # -*- coding: utf-8 -*- import module class B(object): pass class C(object): pass 

    您是否将import语句和编码注释与一个空行分开?

    而导入语句和类的开头有两个空行?

  3. 还有一个主要模块:

     #!/usr/bin/env python # -*- coding: utf-8 -*- import module def main(): a = module.A() return 0 if __name__ == '__main__': status = main() 

    你用两个空行分隔import语句和顶级函数吗?

    顶级函数和带有两个空行的条件语句的结尾?

有一个名为pep8的Python模块可以检查你的代码,看它是否符合pep8指南。

我尝试在你列出的例子上运行pep8,以及它们的几个变体,一般来说,pep8程序接受所有这些都符合pep8指南。 所以基本上,你所有问题的答案都是肯定的

确实存在一定程度的主观性 - 例如,您可以在main函数和if __name__ == '__main__'段之间有两个或一个换行符。 但是,我不太担心pep8合规性 - 只需下载并安装pep8程序以及其他代码分析器(例如pylint )。 只要您的代码通过了这些测试,它就足够了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM