缩进
统一使用 4 个空格进行缩进,不要混合使用制表符和空格来缩进,也不要单独使用制表符Tab。对于行连接的情况,可以垂直对齐换行的元素。
行宽
每行代码尽量不超过 80 个字符,在特殊情况下可以略微超过 80 ,如长的导入模块语句或注释里的URL。
Python会将圆括号、中括号和花括号中的行隐式的连接起来,可以利用这个特点,在表达式外围增加一对额外的圆括号,不要使用反斜杠连接行。
如果条件语句中条件过多,放在一行显得超长,可以使用圆括号来实现隐式连接,如下
如果一个文本字符串放在一行显得超长,可以使用圆括号来实现隐式行连接,如下:
引号
自然语言使用双引号,机器标示使用单引号,因此 代码里 多数应该使用 单引号。
空行
模块中类定义与函数之间空两行,类中各函数之间空一行,函数中可以使用空行分隔各逻辑代码块,使其更加清晰。
模块导入
每个独立模块导入应该独占一行,导入代码应该放在文件顶部,置于模块说明、文档字符串之后,全局变量、常量之前,模块导入建议顺序建议参考以一下顺序,每组之间使用一个空行分隔:
同时,导入模块应尽量使用绝对导入。
空格
在二元操作符两边都加上一个空格,如 =,==, <, >, !=, <>, <=, >=, in, not in, is, is no,and, or, not。额外注意的是,当'='用于指示关键字参数或默认参数值时, 不要在其两侧使用空格。
函数的参数列表中“,”之后要有空格,但左括号之后,右括号之前不要加多余的空格。
块注释
“#”号后空一格,段落间需要用空行分开。
行注释
行注释至少使用两个空格和语句分开。
文档注释——文档字符串Docstring
作为文档的Docstring一般出现在模块、函数和类的头部,Python中可以通过对象的__doc__属性获取文档字符串。Python中模块、类、函数、方法、生成器,应尽量写文档字符串。外部不可见的私有方法可以不写,但应该在 def 后提供一个块注释说明。文档注释以 """ 开头和结尾, 首行不换行, 如有多行, 末行必需换行。
对函数的注释说明,建议参考如下注释规范,如下所示:
模块命名
模块使用小写字母命名,首字母保持小写,尽量不要用下划线。
类名命名
类名使用驼峰命名风格,首字母大写。
函数命名
函数名全部采用小写字母,如有多个单词,用下划线隔开。
变量命名
变量名尽量使用小写字母,常量采用全大写字母,如有多个单词,用下划线隔开。