Python 编码规范
官网规范:https://www.python.org/dev/peps/pep-0008/
1、不在同一句import中引用多个库
# 正确姿势:
import os
import sys # 错误姿势
import os,sys # 未被使用的库就不用引用了
2、代码长度约束
一行列数:PEP8 规定最大为79列,如果拼接url很容易超限
一个函数:不可以超过30行;直观来讲就是完整显示一个函数一个屏幕就够了,不需要上下拖动
一个类:不要超过200行代码,不要超过10个方法
一个模块:不要超过500行
3、常见格式问题
1)W292 no newline at end of file
处理:在代码末尾加一行回车就行 2)E302 expected 2 blank lines,found 1
处理:需要再补一个空白行(函数之间需要最少2个空白行,方便查阅、区分) 3)E231 missing whitespace after ‘,’
处理:原因简单来说还是要方便查看,即逗号后“,”需要补空格 示例:
print("%s %s %s %s" %(A,B,C,D))print("%s %s %s %s" % (A, B, C, D))
也许在这里并不能非常明显看出来,但是当代码多的时候,你会发现适当的空格会显得代码容易观看 4)E225 missing whitespace around operator
处理:主要原因其实跟上面的问题三差不多,主要目的都是为了查看方便 5)W291 trailing whitespace
处理:字面意思,函数、或者代码段终止处出现了多余的空格 举例
return kw (这里多了几个空格,错误)return kw 6)函数间隔
两个函数体之间,间隔两个空行 7)其他
1 typo found # 1个错误被发现
1 weak warning found # 1个弱警告
4、空格
空格在 Python 代码中是有意义的,因为 Python 的语法依赖于缩进,在行首的空格称为前导空格。在这一节不讨论前导空格相关的内容,只讨论非前导空格。非前导空格在 Python 代码中没有意义,但适当地加入非前导空格可以增进代码的可读性。
# 在二元算术、逻辑运算符前后加空格:如
a = b + c; # 在一元前缀运算符后不加空格,如
if !flg: pass; # “:”用在行尾时前后皆不加空格,如分枝、循环、函数和类定义语言;用在非行尾时两端加空格,如:dict 对象的定义
d = {'key' : 'value'}
# 括号(含圆括号、方括号和花括号)前后不加空格,如:
do_something(arg1, arg2)
而不是
do_something( arg1, arg2 )
# 不要在逗号、分号、冒号前面加空格,但应该在它们后面加(除了在行尾)
# 不要用空格来垂直对齐多行间的标记,因为这会成为维护的负担(适用于:,#,=等)
5、空行
适当的空行有利于增加代码的可读性,加空行可以参考如下几个准则:
1) 在类、函数的定义间加空行;
2) 在 import 不同种类的模块间加空行;
3) 在函数中的逻辑段落间加空行,即把相关的代码紧凑写在一起,作为一个逻辑段落,段落间以空行分隔;
Python 编码规范的更多相关文章
- python编码规范
python编码规范 文件及目录规范 文件保存为 utf-8 格式. 程序首行必须为编码声明:# -*- coding:utf-8 -*- 文件名全部小写. 代码风格 空格 设置用空格符替换TAB符. ...
- 【转】python编码规范
http://blog.csdn.net/willhuo/article/details/49300441 决定开始Python之路了,利用业余时间,争取更深入学习Python.编程语言不是艺术,而是 ...
- python 编码规范整理
PEP8 Python 编码规范 一 代码编排1 缩进.4个空格的缩进(编辑器都可以完成此功能),不要使用Tap,更不能混合使用Tap和空格.2 每行最大长度79,换行可以使用反斜杠,最好使用圆括号. ...
- PEP8 - Python编码规范
PEP8 - Python编码规范 PEP8 规范 官方文档:https://www.python.org/dev/peps/pep-0008/ PEP8 规范 中文翻译:http://www.cnb ...
- python经典书籍推荐:python编码规范
目录INF-qa Python 编码规范................................................................................ ...
- Python编码规范:IF中的多行条件
Python编码规范:IF中的多行条件 转载 2017年03月08日 09:40:45 http://blog.csdn.net/wsc449/article/details/60866700 有时我 ...
- 说说Python编码规范
前言 已有近两个月没有发表过文章了,前段时间外甥和女儿过来这边渡暑假,平常晚上和周末时间都陪着她们了,趁这个周末有空,再抽空再把这块拾起来. 这么久没写了,再次拿起键盘,想想,发表些什 ...
- 转--python 编码规范
编程规范 1.1. 命名规范 1.1.1. [强制] 命名不能以下划线或美元符号开始和结尾 反例: name / __name / $Object / name / name$ / Object$ 1 ...
- Python 编码规范(Google)
Python 编码规范(Google) https://blog.csdn.net/q469587851/article/details/54096093 Python 风格规范(Google) 本项 ...
- PEP8 Python 编码规范整理(转)
决定开始Python之路了,利用业余时间,争取更深入学习Python.编程语言不是艺术,而是工作或者说是工具,所以整理并遵循一套编码规范是十分必要的.所以今天下午我根据PEP 8整理了一份,以后都照此 ...
随机推荐
- OSGMFC
在OSG的Demo中找到MFC_OSG类文件. #pragma once #include <osgViewer/Viewer> #include <osgViewer/Viewer ...
- Json.Net Demo2
新建一个空的Web项目,名称JsonServer,该网页实现Ajax数据请求和响应. 添加Newtonsoft.Json.dll的Dll引用,添加JQuery API文件,目录结构如下: 新建一个Pe ...
- [GDAL]GEOS和Proj4编译
1.下载源码 geos-3.4.2.tar.bz2 http://trac.osgeo.org/geos/ proj-4.8.0.zip http://trac.osgeo.org/proj ...
- Oracle忽略hint的几种情形
1.hint有语法错误.拼写错误 2.hint无效.比如索引不存在.非等值查询使用hash hint等 3.多个hint之间自相矛盾 4.hint受到了查询转换的影响 5.hint受到了数据库保留字的 ...
- npm 介绍
安装NPM NPM的全称是Node Package Manager,如果你熟悉ruby的gem,Python的PyPL.setuptools,PHP的pear,那么你就知道NPM的作用是什么了.没 错 ...
- ssh两台机器建立信任关系无密码登陆
在建立信任关系之前先看看基于公钥.私钥的加密和认证. 私钥签名过程 消息-->[私钥]-->签名-->[公钥]-->认证 私钥数字签名,公钥验证 Alice生成公钥和私钥,并将 ...
- Java基础(48):归并排序的Java封装含原理,完整可运行,结合VisualGo网站更好理解)
原理: 归并排序建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用. 将已有序的子序列合并,得到完全有序的序列:即先使每个子序列有序, ...
- Java用native2ascii命令做unicode编码转换
背景:在做Java开发的时候,常常会出现一些乱码,或者无法正确识别或读取的文件,比如常见的validator验证用的消息资源(properties)文件就需要进行Unicode重新编码.原因是java ...
- linux第9天 UDP
今天学了一点UDP知识,还是IP协议.都不是重点,重点是socket服务器框架 不过还是把今天学的东西,先罗列出来,将来复习的时候方便 q UDP报文可能会丢失.重复 q UDP报文可能会乱序 q ...
- mysql报错 "code":"08S01","msg":"SQLSTATE
2016-04-25 09:22 97人阅读 评论(0) 收藏 举报 分类: Magento(6) 今天在批量伪造测试数据时,MySQL收到下面异常:ERROR 1153 (08S01): Got a ...