整理来自 effective python

一 空白

  1 使用space来标识缩进,而不是tab

  2 和语法相关的每层缩进都使用4个空格

  3 每行的字符数不应该超过79

  4 对于多行的表达式,除了首行,其他行再缩进4个空格

  5 文件中的函数和类之间用两个空行隔开

  6 同一个类中,各个函数使用一个空行隔开

  7 在使用下标来获取元素,调用函数或者给关键字赋值的时候,不要再两旁添加空格

  8 为变量赋值的时候,赋值符号的左侧和右侧应该各自写上一个空格,而且只写一个就好

二 命名

  1 函数,变量及属性应该用小写字母来拼写,各个单词之间用下划线相连,例如 lowercase_underscore

  2 受保护的实例属性应该以一个下划线开头

  3 私有的实例属性应该以两个下划线开头

  4 类与异常,应该以每个单词的首字母大写来书写,CapitalizedWord

  5 模块级别的常量,所有字符均大写,单词之间使用下划线相连,ALL_CAPS

  6 类的实例方法(Instance method)应该把首个参数命名为self,以表示对象本身

  7 类方法(Class method)应该把首个参数命名为cls,以表示类自身

三 表达式和语句

  1 采用内联形式的否定词,而不是把否定词放在整个表达式的前面,例如 应该写if a is not b 而不是 if not a is b

  2 不要通过检查长度的办法(如 if len(somelist)==0) 来判定somelist是否为[] 或者‘’ 等空值,而应该采用 if not somelist这种写法来判断,它会假定:空值将自动评估为False

  3 检测somelist是否为[1]或者'hi'等非空值时,也该如此,if somelist 语句默认会把非空值判定为True

  4 不要编写单行if /for/ while/ except复合语句,而是应该把这些语句分成多行来写。

  5 import语句应该始终位于文件的开头

  6 引入模块的时候应该总是使用绝对名称,而不应该根据当前的路径来使用相对名称,例如,引入bar包中的foo模块时,应该完整地写出from bar import foo,而不应该简单写成import foo

  7 如果一定要以相对名称来编写import语句,那就采用明确的写法:from.import foo

  8 文件中的import语句应该按照顺序分成三个部分,分别表示标准库模块,第三方模块以及自用模块。在每一部分之中,各import语句应该按照模块的字母顺序来排列。

遵循PEP8风格指南的更多相关文章

  1. 第2条:遵循PEP8风格指南

    <Python Enhancement Proposal #8>(8号Python增强提案)又叫PEP8,它是针对Python代码格式而编订的风格指南. 尽管可以在保证语法正确的前提下随意 ...

  2. 遵循PEP8风格

    遵循PEP8风格 在编写python代码的时候我们应该采用统一的风格来编写代码,可以使代码更加容易读懂.采用和其他程序员统一的编码风格来写代码,也可以使项目更利于多人协作开发.即便代码只有你自己能看懂 ...

  3. python代码风格指南:pep8 中文翻译

    摘要 本文给出主Python版本标准库的编码约定.CPython的C代码风格参见​PEP7.本文和​PEP 257 文档字符串标准改编自Guido最初的<Python Style Guide&g ...

  4. python的PEP8 代码风格指南

    PEP8 代码风格指南 这篇文章原文实际上来自于这里:https://www.python.org/dev/peps/pep-0008/ 知识点 代码排版 字符串引号 表达式和语句中的空格 注释 版本 ...

  5. python代码风格指南:pep8 中文版

    本文档所提供的编码规范,适用于主要的Python发行版中组成标准库的Python代码.请参阅PEP关于Python的C实现的C编码风格指南的描述. 本文档和PEP257(文档字符串规范)改编自Guid ...

  6. Python PEP-8编码风格指南中文版

    #PEP 8 – Python编码风格指南 PEP: 8 Title: Style Guide for Python Code Author: Guido van Rossum , Barry War ...

  7. PEP8中文版 -- Python编码风格指南

    Python部落组织翻译, 禁止转载 目录      缩进      制表符还是空格?      行的最大长度      空行      源文件编码      导入      无法忍受的      其 ...

  8. Python 编码风格指南

    原文:http://python.jobbole.com/84618/ 本文超出 PEP8 的范畴以涵盖我认为优秀的 Python 风格.本文虽然坚持己见,却不偏执.不仅仅涉及语法.模块布局等问题,同 ...

  9. R 语言编码风格指南

    R 语言是一门主要用于统计计算和绘图的高级编程语言.这份 R 语言编码风格指南旨在让我们的 R代码更容易阅读.分享和检查.以下规则系与 Google 的 R 用户群体协同设计而成. 概要: R编码风格 ...

随机推荐

  1. python接口自动化测试三十四:github上某接口测试平台及配置

    TeserHome地址:https://testerhome.com/opensource_projects/60前端:https://github.com/pencil1/ApiTestWeb 实现 ...

  2. 如何消去delphi Stringgrid重绘时产生重影

    procedure TForm1.Stringgrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGrid ...

  3. 服务端:WCF服务层安全检查核心类

    using System.Data; using CSFrameworkV4_5.Common; using CSFrameworkV4_5.Core.SystemSecurity; using CS ...

  4. lua string.byte怎么判断是中文还是别的

    string.byte(char)>127是中文,string.sub(s,i,i+2),占两个字节,中文 string.byte(char)<=127是普通字符,咱一个字节

  5. python-django之cookie及session

    Cookie Cookie的由来 Http协议是无状态的 无状态的意思是每次都是独立的请求存在,它的执行情况和结果与前面的请求和后面的请求都无直接关系,它不会受到前面的请求响应情况直接影响,也不会直接 ...

  6. 解决Ubuntu与Windows双系统时间不同步问题

    目录 1.Windows修改法 1.1设置UTC 1.2恢复LocalTime 2.Ubuntu修改法 2.1设置LocalTime 2.2恢复UTC 切换系统后,往往发现时间差了8小时.这恰恰是北京 ...

  7. vscode中git的配置

    vscode中对git进行了集成,很多操作只需点击就能操作,无需写一些 git 指令. 不过这就需要你对vscode进行配置.下面我会讲到 git 的配置与免密码上传 github VSCode配置g ...

  8. linux缺頁異常處理--內核空間[v3.10]

    缺頁異常被觸發通常有兩種情況—— 1.程序設計的不當導致訪問了非法的地址 2.訪問的地址是合法的,但是該地址還未分配物理頁框 下面解釋一下第二種情況,這是虛擬內存管理的一個特性.盡管每個進程獨立擁有3 ...

  9. docker-container 操作

    1.把container放后台运行 [root@localhost dockerfile3]# docker run bigni/python_flask #默认运行image,container里运 ...

  10. vuex存取数据展示在table里-----第一次实现

    之前也看了vuex的文档,对它的原理只是了解,看代码(仅自己复习.做笔记) 流程是在组件的created中提交dispatch,然后通过action调用一个封装好的axios然后再触发mutation ...