目录
参考文档
Python 代码规范
缩进
- 每一级缩进使用4个空格。
- 当一行代码过长时,采用隐式续行方式,但是续行要与它包裹的参数对齐。例如:
# 与左括号对齐
foo = long_function_name(var_one, var_two,
var_three, var_four)
- 当 if 条件语句部分过长时,可以在两个字符关键字的连接处增加一个空格,并且增加一个左括号来创造4个空格缩进的条件。例如:
# 没有额外的缩进
if (this_is_one_thing and
that_is_another_thing):
do_something()
- 多行结构中的大括号、中括号和小括号可以与内容对齐单独放在一行。例如:
my_list = [
1, 2, 3,
4, 5, 6,
]
- 空格是首选的缩进方式,Python3中不允许空格缩进与制表符缩进的同时使用。
变量命名
变量的命名要体现变量的数据类型和具体意义
- 局部变量名
全小写 + 下划线式驼峰 例如:this_is_var
- 全局变量
全大写 + 下划线式驼峰 例如:GLOBAL_VAR
每行最多字符数
- 所有行限制的最大字符数为79
- 文档或注释的最大字符数为72
- 较长的代码优先使用隐式续行的方式,断行的最好位置是在操作符之后,当隐式续行方式不能使用时可以使用反斜杠续行。例如:
with open('/path/to/some/file/you/want/to/read') as file_1, \
open('/path/to/some/file/being/written', 'w') as file_2:
file_2.write(file_1.read())
函数、类命名
- 函数名
全小写 + 下划线式驼峰 例如:this_is_var
- 类名
首字母大写式驼峰 例如:ClassName
常量
常量通常定义在模块级,通过下划线分割的全大写字母命名。例如:MAX_OVERFLOW 和 TOTAL
空行规则
- 顶层函数和类的定义之间用两个空行隔开
- 类里面的方法定义用一个空行隔开
- import 导入按标准库导入、相关第三方库导入和本地应用/库特定导入的顺序排版,并且之间用一个空行隔开
注释规则
- 注释应该是完整的句子。
- 如果注释很短,结尾的句号可以省略
- 在句尾结束的时候应该使用两个空格
- 块注释的每一行开头使用一个 # 和一个空格,并且缩进到与其代码相同的级别
操作符前后空格
- 小括号、中括号和大括号前后不需要空格
- 逗号、分号和冒号前面不需要空格,后面需要空格(冒号在扩展的切片操作中,需要有相同间距)
- 在二元运算符的左右两边都加上空格