python编码规范-PE8

《python enhancement proposal #8》(8号python增强提案)

空白

  • 用space表示缩进,不要用tab
  • 每层缩进用4个空格表示
  • 每行字符串不超过79
  • 占用多行的长表达式,除了首行外其余各行都应该在基础之上再加4个space
  • 文件中的函数与类应该用两个space隔开
  • 在同一个类中,各个方法用一个space隔开
  • 在使用下标获取列表元素,调用函数或者给关键词参数赋值的时候,不要在两旁加空格
  • 给变量赋值的时候,赋值符号左右两侧应该各加一个space

命名

  • 函数、变量及属性应该用小写字母拼写,各单词用 下划线连接,如lowercase_underscore
  • 受保护的实例属性,应该以单个下划线开头,如:_leading_underscore
  • 私有的实例属性,应该以两个下划线开头,如__double_leading_underscore
  • 类和异常,应该以每个单词的首字母大写命名,如CapitalizedWorld
  • 模块级别的产量,全部大写字母命名,如ALL_CAPS
  • 类中的实例方法,首个参数命名为self,表示该对象自身
  • 类方法的首个参数,应该命名为cls,表示该类自身

表达式和语句

  • 文件中import语句应该放在最前面,分为3个部分,分别表示标准库模块,第三方模块,自用模块
  • 引入模块的时候,应该使用绝对名称,而不是当前模块来的路径来使用相对名称。例如映入bar包中的foo模块,应该完整写出from bar import foo,而不是import foo
  • 如果一定要用相对名称写import语句,采用明确的写法from . import foo
  • 不要通过检测长度的办法if len(list)==0来判断list是否为[],或者‘’等空值,而是应该采用if not list来判断,它会将空值自动评估为false
  • 采用内联形式的否定词,而不要将否定词放在整个表达式的最前面,如 if a is not b而不是if not a is b
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • --< > 令人讨厌的小人物身上有着愚蠢的一致性 --(A Foolish Consistency is the ...
    LittleWizard阅读 3,275评论 0 4
  • 以前翻译过<effective python>的几章, 后来发现已经有人翻译过了, 就停了想想还是放上来吧 第二条...
    buyu007阅读 418评论 0 0
  • 代码布局 缩进 每一行缩进使用四个空格 延续行与圆括号、方括号和花括号内的左部垂直对齐,或使用悬挂缩进。 悬挂缩进...
    IT白阅读 1,031评论 0 0
  • 介绍 本文档给出了Python代码的编码约定。 该样式指南会随着时间的流逝而发展,因为会发现其他约定,而过去的约定...
    Eazow阅读 492评论 0 0
  • Introduction This document gives coding conventions for t...
    wuutiing阅读 4,662评论 0 9