代码编排

  1. 缩进。4个空格的缩进(编辑器都可以完成此功能),不使用Tap,更不能混合使用Tap和空格。
  2. 每行最大长度79,换行可以使用反斜杠,最好使用圆括号。换行点要在操作符的后边敲回车。
  3. 类和top-level函数定义之间空两行;类中的方法定义之间空一行;函数内逻辑无关段落之间空一行;其他地方尽量不要再空行。

文档编排

  1. 模块内容的顺序:模块说明和docstring—import—globals&constants—其他定义。其中import部分,又按标准、三方和自己编写顺序依次排放,之间空一行。
  2. 不要在一句import中多个库,比如import os, sys不推荐。
  3. 如果采用from XX import XX引用库,可以省略‘module.’,都是可能出现命名冲突,这时就要采用import XX。

空格的使用

总体原则,避免不必要的空格。

  1. 各种右括号前不要加空格。
  2. 逗号、冒号、分号前不要加空格。
  3. 函数的左括号前不要加空格。如Func(1)。
  4. 序列的左括号前不要加空格。如list[2]。
  5. 操作符左右各加一个空格,不要为了对齐增加空格。
  6. 函数默认参数使用的赋值符左右省略空格。
  7. 不要将多句语句写在同一行,尽管使用‘;’允许。
  8. if/for/while语句中,即使执行语句只有一句,也必须另起一行。

注释

总体原则,错误的注释不如没有注释。所以当一段代码发生变化时,第一件事就是要修改注释!注释必须使用英文,最好是完整的句子,首字母大写,句后要有结束符,结束符后跟两个空格,开始下一句。如果是短语,可以省略结束符。

1. 块注释,在一段代码前增加的注释。在‘#’后加一空格。段落之间以只有‘#’的行间隔。比如:
# Description : Module config.
#
# Input : None
#
# Output : None
2. 行注释,在一句代码后加注释。比如:(但是这种方式尽量少使用)
x = x + 1       # Increment x
避免无谓的注释。

文档描述

  1. 为所有的共有模块、函数、类、方法写docstrings;非共有的没有必要,但是可以写注释(在def的下一行)。
  2. 如果docstring要换行,参考如下例子,详见PEP 257
    """
    Return a foobang
    Optional plotz says to frobnicate the bizbaz first.
    """

命名规范

总体原则,新编代码必须按下面命名风格进行,现有库的编码尽量保持风格。

  1. 尽量单独使用小写字母‘l’,大写字母‘O’等容易混淆的字母。
  2. 模块命名尽量短小,使用全部小写的方式,可以使用下划线。
  3. 包命名尽量短小,使用全部小写的方式,不可以使用下划线。
    4.类的命名使用CapWords的方式,模块内部使用的类采用_CapWords的方式。
  4. 异常命名使用CapWords+Error后缀的方式。
  5. 全局变量尽量只在模块内有效,类似C语言中的static。实现方法有两种,一是all机制;二是前缀一个下划线。
  6. 函数命名使用全部小写的方式,可以使用下划线。
  7. 常量命名使用全部大写的方式,可以使用下划线。
  8. 类的属性(方法和变量)命名使用全部小写的方式,可以使用下划线。
  9. 类的属性有3种作用域public、non-public和subclass API,可以理解成C++中的public、private、protected,non-public属性前,前缀一条下划线。
  10. 类的属性若与关键字名字冲突,后缀一下划线,尽量不要使用缩略等其他方式。
  11. 为避免与子类属性命名冲突,在类的一些属性前,前缀两条下划线。比如:类Foo中声明__a,访问时,只能通过Foo._Foo__a,避免歧义。如果子类也叫Foo,那就无能为力了。
  12. 类的方法第一个参数必须是self,而静态方法第一个参数必须是cls。

博客搬运地址

  • PEP8 Python 编码规范

转载于:https://www.cnblogs.com/clement-jiao/p/9069312.html

PEP8 Python 编码规范相关推荐

  1. python编码规范手册-PEP8 Python 编码规范整理

    决定开始Python之路了,利用业余时间,争取更深入学习Python.编程语言不是艺术,而是工作或者说是工具,所以整理并遵循一套编码规范是十分必要的.所以今天下午我根据PEP 8整理了一份,以后都照此 ...

  2. PEP8 Python 编码规范整理

    决定开始Python之路了,利用业余时间,争取更深入学习Python.编程语言不是艺术,而是工作或者说是工具,所以整理并遵循一套编码规范是十分必要的.所以今天下午我根据PEP 8整理了一份,以后都照此 ...

  3. pep8 python 编码规范_「原创」「python自学笔记」python编码规范

    编码规范是学习一个语言前必须要了解的. Python采用PEP8作为编码规范,PEP是Python Enhancement Proposal(Python 增强建议书)的缩写,8代表的是Python代 ...

  4. pep8 python 编码规范_编码规范的重要性

    很多去 Google 参观的人,在用完洗手间后都有这样的疑惑,马桶前面的门上怎么会贴着 Python 编码规范?要知道,Google 对编码规范的要求极其严格,这也能从侧面说明编码规范的重要性. 对于 ...

  5. pep8 python 编码规范_Python合集之Python语法特点(三)

    在上一节的合集中我们了解了Python语法特点中的代码缩进规则,本节将继续讲解语法特点中的编码规范. 编码规范,在职业生涯及不同的公司中,都是重点强调的一个问题,为什么如此重要呢?因为遵循一定的代码编 ...

  6. pep8 python 编码规范下载_PEP8 Python 编码规范整理

    决定开始Python之路了,利用业余时间,争取更深入学习Python.编程语言不是艺术,而是工作或者说是工具,所以整理并遵循一套编码规范是十分必要的.所以今天根据PEP8整理了一份,以后都照此编码了, ...

  7. PEP8 - Python编码规范完整中文版

    PEP8 原文地址:http://legacy.python.org/dev/peps/pep-0008/ Introduction 介绍 本文提供的Python代码编码规范基于Python主要发行版 ...

  8. pep8 python 编码规范_实用的python编码规范

    编码规范在程序开发中是一项很重要要求,良好的编码规范对程序的可读性.代码的可维护性都有很大的提高,从而提高开发效率.下面总结了python中一些实用的开发规范,供大家借鉴和参考. 1.每行不超过80个 ...

  9. pep8 python 编码规范_如何用好python编码规范,写一手漂亮的代码

    前一段时间在编写python 代码的时候编辑器中一直在提示规范问题,因为强迫症的原因,我决定遵循python 的编码规范去编码,然后把需要注意的点记录下来, 帮助自己和大家一起成长. 这是我的main ...

  10. PEP8 Python 编码规范 -----Indent 缩进

    PEPs(Python Enhancement Proposals)  是增强Python可读的建议规范,描述和记录了Python语言的发展方式.它还为Pythonic方式编写代码提供了一个参考点.当 ...

最新文章

  1. 每日一皮:男同胞们小心,连视频直播都被东南亚邪术控制了...
  2. 写出整洁的高效的js代码
  3. 友元是c还是java_[C++]【类】友元的三种声明及注意事项
  4. java位运算求幂,程序员必学:快速幂算法
  5. c语言中打印ipv6地址,c-来自任何有效地址的ipv4和ipv6
  6. 【总结】实现点击累加效果的几种方式对比
  7. APUE学习笔记 - Chapter 2 . Unix Standardization and Implementations
  8. 大数据大屏设计-PS拉框助手
  9. 基于HTML5 WebGL 与 GIS 的智慧机场大数据可视化分析
  10. zip和unzip命令使用
  11. 服务器怎么开启lldp协议,修改服务器lldp的mac地址
  12. 安卓手机微信数据恢复取证研究 EnMicroMsg.db FTS5IndexMicroMsg_encrypt.db
  13. 阿里巴巴电话面试(遭到了阿里的完虐,被一顿痛批)
  14. 【简单示例:数据库表转XML】
  15. 淘宝首页性能优化实践
  16. 2022-02-22 AndroidN之后 app代码安装apk,以及提示“There was a problem parsing the package“的解决方案
  17. 怎么样域名绑定服务器显示成功,域名备案成功后怎么绑定服务器
  18. 正则表达式之多种格式的电话号码匹配
  19. 【APP项目环境及发布平台】
  20. 终端便捷ssh(免密)连接

热门文章

  1. [渝粤教育] 西南科技大学 物流信息系统 在线考试复习资料
  2. [渝粤教育] 西南科技大学 财务会计 在线考试复习资料
  3. 【渝粤题库】陕西师范大学201831 课程论 作业
  4. 【渝粤教育】广东开放大学 企业文化学 形成性考核 (57)
  5. 【浙江大学PAT真题练习乙级】1006 换个格式输出整数 (15分) 真题解析
  6. c编程技巧——获取可用的处理器(CPU)核数
  7. IDEA Tomcat控制台中文乱码
  8. Jmeter逻辑控制器操作,附栗子
  9. mssql sql server 其它系统函数 parsename 点语法字符串分割函数应用简介
  10. 2019招行信用卡中心春招笔试题