一、PEP8规范
1、缩进
对齐缩进、悬挂缩进、层级缩进
2、行的最大长度
最大限制为79、超过最大行用 进行隐式换行
3、空行
顶层函数和类的定义,前后用两个空行隔开、类里的方法定义用一个空行隔开
4、注释
行内注释、块注释、文档字符串注释(查看模块的文档字符串注释:.__doc__)
5、命名约定
变量命名(不能以l(小写L),O(大写o),I(大写i)命名)
函数命名(尽量小写,或者加下划线)
类命名(首字母大写)
类里面函数和方法参数(始终要将self作为实例方法的第一个参数、始终要将cls作为类方法的第一个参数、如果函数参数名和关键词冲突,加下划线较好)
6、字符串引号
单双引号:外层引号使用和内存引号不一样来避免用反斜杠
7、模块和包导入规范包
模块名称要短,使用小写,避免使用特殊符号
模块导入建议:from modu import *(差)、from modu import sqrt(稍好)、import modu (最好)
__all__变量(只会导入该变量中指定的模块)
包:含__init.py文件的叫做python包、导入包时自动执行init文件
二、PEP257规范
python文档字符串相关联的语义和约定
三、工程结构化
readme:对项目的整体介绍,同时也是一份使用手册,通常为README.rst/README.md
LICENSE:阐述该项目的许可说明和授权
setup.py:通过setup把核心代码打包发布
项目目录:存放项目的核心代码
requiremente.txt:存放该项目所有依赖的第三方库
docs:包的参考文档
tests:所有的代码测试都归存放于该目录下
makefile:用于项目的命令管理(开源项目广泛使用)根据项目需求添加其他的文件和目录