PEP8编码标准
1 代码编写:
1. 使用4个空格进行推进,不使用TAB,更不允许TAB和空格一起使用
设置Tab键时四个空格
2. 每行最大长度79个字节,超过部分使用反斜杠折行
3. 类和全局函数定义间隔两个空行,类内方法定义间隔一个空行,其它地方不加空行
2 文档编排:
1. import 部分,按标准,三方和自己编写的顺序依次排序,之间空一行
2. 不要在一名import中导入多个库模块,如:import os,sys,time应写成多行
3. 尽可能用import xx 而尽量少用 from xx import yy 引用库,因为可能出现名字冲突
3 空格的使用
1 各种右括号前不用加空格
2 逗号,冒号,分号前不要加空格
3 函数左括号前不要加空格
4 操作符左右各加一个空格,不要为了对齐增加空格
5 函数的默认参数使用的赋值符左右省却空格(缺省值参数)
6 不要将多句语句写在同一行,尽量不要加用;
7 if/for/while 语句中即使执行语句只有一句,也要另起一行
补充旧式类,新式类
旧式类 class A:
pass
新式类 class A(object):
pass
现在所说的,提倡的一般就是新式类
继承多个:
classA(B,C,D):
方法重叠则从左到右找
菱形继承:类似于广度优先遍历
A.__mro__ 判断先后继承是哪个
mro算法判断出来的
一般不采用菱形继承
以上说的是新式类中的继承优先级
旧式类中继承优先级使用深度优先遍历
2 super是子类中使用父类方法,同时也是新式类中才有的
3 global 和 nonlocal
nonlocal 是python3中的新增内容