遵循PEP8风格指南
整理来自 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风格指南的更多相关文章
- 第2条:遵循PEP8风格指南
<Python Enhancement Proposal #8>(8号Python增强提案)又叫PEP8,它是针对Python代码格式而编订的风格指南. 尽管可以在保证语法正确的前提下随意 ...
- 遵循PEP8风格
遵循PEP8风格 在编写python代码的时候我们应该采用统一的风格来编写代码,可以使代码更加容易读懂.采用和其他程序员统一的编码风格来写代码,也可以使项目更利于多人协作开发.即便代码只有你自己能看懂 ...
- python代码风格指南:pep8 中文翻译
摘要 本文给出主Python版本标准库的编码约定.CPython的C代码风格参见PEP7.本文和PEP 257 文档字符串标准改编自Guido最初的<Python Style Guide&g ...
- python的PEP8 代码风格指南
PEP8 代码风格指南 这篇文章原文实际上来自于这里:https://www.python.org/dev/peps/pep-0008/ 知识点 代码排版 字符串引号 表达式和语句中的空格 注释 版本 ...
- python代码风格指南:pep8 中文版
本文档所提供的编码规范,适用于主要的Python发行版中组成标准库的Python代码.请参阅PEP关于Python的C实现的C编码风格指南的描述. 本文档和PEP257(文档字符串规范)改编自Guid ...
- Python PEP-8编码风格指南中文版
#PEP 8 – Python编码风格指南 PEP: 8 Title: Style Guide for Python Code Author: Guido van Rossum , Barry War ...
- PEP8中文版 -- Python编码风格指南
Python部落组织翻译, 禁止转载 目录 缩进 制表符还是空格? 行的最大长度 空行 源文件编码 导入 无法忍受的 其 ...
- Python 编码风格指南
原文:http://python.jobbole.com/84618/ 本文超出 PEP8 的范畴以涵盖我认为优秀的 Python 风格.本文虽然坚持己见,却不偏执.不仅仅涉及语法.模块布局等问题,同 ...
- R 语言编码风格指南
R 语言是一门主要用于统计计算和绘图的高级编程语言.这份 R 语言编码风格指南旨在让我们的 R代码更容易阅读.分享和检查.以下规则系与 Google 的 R 用户群体协同设计而成. 概要: R编码风格 ...
随机推荐
- git开发实战:问题解决
git作为一个高效的开发协作工具,其版本管理和分支管理是其高效管理代码的体现.但是我们在平时开发中,往往要一边修着bug一边做着新功能,这样有可能就会遇到以下几种场景 1.改完bug忘记切换分支了,代 ...
- nginx的配置系统
nginx的配置系统由一个主配置文件和其他一些辅助的配置文件构成.这些配置文件均是纯文本文件,全部位于nginx安装目录下的conf目录下. 配置文件中以#开始的行,或者是前面有若干空格或者TAB,然 ...
- css 样式小窍门
css 样式小窍门 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- CodeForce-1196C-Robot Breakout
原题链接 原题大意: 每个机器人分散,可以上下左右移动,但是有些机器人不能向某些方向移动 给出每个机器人的坐标,和每个方向能否正常行进 思路: 用minx, maxx, miny, maxy 记录可以 ...
- 转 lsof命令详解
lsof命令详解 lsof (list open files)是一个列出当前系统打开文件的工具.在linux系统环境下,任何事物都可以以文件形式存在,通过文件不仅可以访问常规的数据,还可以访问网络 ...
- TP框架的模板路径问题以及常用的模板常量的定义
在TP框架中,为了各个模块加载静态文件方便,往往是不需要按照默认的方式放置静态文件到/app/模块名/VIEWS/下面,而是在顶级目录下创建一个新的目录(比如说./tpl目录下),来存放静态文件 ...
- java反射-学习
使用Java反射机制可以在运行时期获取Java类的信息,可获取以下相关的内容: Class对象 类名 修饰符 包信息 父类 实现的接口 构造器 方法 变量 注解 简单的反射例子: 1.获取class对 ...
- 容器改变/窗口改变重新渲染echarts
是否遇见使用侧边栏菜单收缩/展开,echarts容器大小变化,但是echarts不重新自适应容器.或者,window窗口改变但是echarts不随着改变,针对这两种echarts不自适应的情况,分享下 ...
- 【知识强化】第四章 网络层 4.8 移动IP
这节课我们来学习一下移动IP. 那移动IP呢要跟动态IP区分开.动态IP是指,通过使用DHCP协议,在一个局域网内部的一台主机,就可以动态地获得一个IP地址.那这里面的移动IP是什么意思呢? 我们来举 ...
- Linux系统入门---开机启动流程
目录 Linux系统入门---开机启动流程 一.centos6 二.systemd管理进程 1.查看级别 三.centos7实践案例: 1.案例1:centos7系统,单用户修改root密码 案例2: ...