Python的编码规范是比较混乱的。Python自己、第三方库以及每个开发人员都没有严格统一起来,五花八门的。Python中我最反感的就是Python的命名总是非常喜欢用一些单词缩写甚至用一个字母来表示,如果是第一次见到这个名字很难猜到这个名字想要表达什么意思,也不确定这个缩写究竟是哪个单词的缩写。 Python总是给我一种非常不重视可读性的坏印象。
总的来数Python的编码规范和C的规范比较相似。
下面列举一些比较重要的规范:
- 统一使用4个空格进行缩进,将IDE中的Tab用4个空格表示。
- 每行代码不易过长,像PyCharm中有一条分隔线,一行代码超过分隔线使用反斜杠\换行
- import语句应该放在文件头部,置于模块说明及docstring之后,于全局变量之前
- 导入库按组导入,可以分为三组,每组使用空格分开:
- 标准库导入
- 第三方库导入 site-packages
- 本地模块
# 第一组:标准库
import os
import sys
import json
# 第二组:第三方库
import requests
import numpy
import pandas
# 第三组:本地模块
from .models import OrderModel
- 包
名一般使用小写字母,如果包名是多个单词,可以再分成子包,也可以把所有单词拼在一起作为一个单词 - 模块名全部使用小写字母,如果有多个单词可以直接不使用任何分隔符全部拼接在一起,也可以使用下划线来分隔每个单词
- 列名使用驼峰(CamelCase)命名风格,私有类可用一个下划线开头
- 函数名一律小写,如有多个单词,用下划线隔开, 私有函数在函数前加一个下划线_
- 变量名尽量小写, 如有多个单词,用下划线隔开
- 常量采用全大写,如有多个单词,使用下划线隔开
- 注释主要写明函数,模块的功能,输入参数和输出返回值, 函数中如果使用了关键字参数一定要写好都支持哪些关键字
func(arg1, arg2):
"""在这里写函数的一句话总结(如: 计算平均值).
这里是具体描述.
参数
----------
arg1 : int
arg1的具体描述
arg2 : int
arg2的具体描述
返回值
-------
int
返回值的具体描述
"""