python 代码规范
2017-03-22 12:41:59 0 举报
AI智能生成
python代码规范
作者其他创作
大纲/内容
代码布局
缩进
缩进级别:4个空格
函数参数过长:换行且缩进对齐
if 后加空格
if 条件过长:换行且缩进对齐
多维字典缩进
tab or space
使用 space: 将tab= 4 space
行长度
max 79 char
文档或注释限制在72字符
超过长度使用“\”来衔接
二元运算符前缩进
空行
顶级类和函数是用2个空行分割
类内方法使用1个空行分割
源代码编码
核心始终使用utf-8
Python2使用AscII和Python3使用utf-8不应声明
import
import 语句独自成立
from import 可以单行
import 语句应放在源文件顶部(模块注释和文档字符串之后,全局变量常量之前)
多条import顺序
标准库
第三方库
子主题
注:魅族import使用空白行分割
建议使用绝对导入(相对导入Python已去除)
禁止使用通配符导入
若导入冲突则使用foo.bar.MyClass
dunder方法导入应放在注释和import之间
dunder方法:如__future__
字符串引号
坚持单引号或双引号
出现字符串嵌套使用反斜杠转义
三重引用使用双引号
命名约定
反应用法而不是实现
类名:每个首字母大写
异常名:后缀加“Error”
函数名:应为小写 必要时使用“_”
非公开方法和变量前置加下划线“_”
常量:通常为模块级定义 大写字母加下划线
继承
公开属性无前置下划线
公开属性和保留字冲突添加后置下划线
表达式和
语句的空格
语句的空格
避免使用额外的空格
在圆括号、方括号、花括号内
在逗号、分号、冒号之前
在函数调用参数列表的左括号前
在切片或索引的左方括号前
关键字参数或默认参数
def func( foo=0 )
二元操作符的两端
使用单个空格
使用单个空格
赋值操作费(=)
参数赋值(+=、-=)等
比较操作费(==、<、>、in、not in、is、is not)
布尔操作费(and or not))
出现多个操作费:低优先级两侧使用空格
1 + 2*3
注释
使用英文
大写字母开头
句号结尾并跟两个空格
块注释
使用后面点名。并缩进相同级别
‘#’加一个空格开头
块注释内部段落用单个‘#’fenge
行注释
尽量避免行注释
代码后至少2个spance
文档注释
***文档注释\n***
收藏
收藏
0 条评论
下一页