变量命名准则
- 您应当尽量使自己的变量命名含义清晰,不要使用混乱的字母、数字、表情等意义不明的字符来命名变量
- 一般来说,您不应当使自己的风格频发变换——如果可能,请将整个项目保持统一风格
- 此文章根据本人习惯与编码风格整理,可能和读者的个人习惯与风格有一定冲突,仅提供参考作用,非强制性标准
- 请尽量不要使用意义不明的字母缩写(此处提供字母缩写表)
- 有关下划线的特殊规定,请查看:在Python中,下划线代表着什么? - 掘金 (juejin.cn)
- Python3默认编码为UTF-8,理论上来说可以使用中文做变量名称,但我们通常不建议这么做
知名命名法
- 小驼峰命名法——第一个单词的字母大写,其他单词字母均为小写,如:myFunctionName、myMethodName、myClassName
- 大驼峰命名法(帕斯卡命名法):所有单词字母大写,如:MyFunctionName、MyMethodName、MyClassName
- 下划线命名法:所有单词小写,用下划线链接,如:my_function_name、my_method_name、my_class_name
- 匈牙利命名法:以“属性+类型+对象描述”命名,但在Python中这种命名方法并不常见
常量
# 因Python中没有明确的“常量”概念,所以有此约定
# 全局变量一般为常量,且每个字母应当大写,中间用下划线连接
# 如:
NAME = 'value'
COUNT_NUMBER = 1
普通变量
# 普通变量应当以下划线命名法命名
# 如:
my_demo_name = 'value'
局部变量
# 局部变量原则上应当和普通变量的命名方式保持一致
# 但被大多数人所认可的,i、j、k亦可作为临时变量
# 而正如【变量命名准则 第五条】链接所述,亦可以用“_”命名那些并不重要的、用不到的变量
# 如:
my_demo_name = 'value'
for _ in range(10):
print('value')
for i in range(10):
for j in range(10):
for k in range(10):
print(i,j,k)
nums = [1,2,3]
for num in nums:
print(num)
类与方法
# 类的名称应当以大驼峰命名法命名
# 函数或方法的名称应当以小驼峰命名法或下划线命名法命名(并应用适当的下划线规则),本人推荐使用小驼峰命名法
# 如:
class MyClassName:
def __init__(self, name):
self.name = name
def getName(self):
return self.name
print(MyClassName('value').getName())
self与cls
# 在实例方法中,应当在第一个参数的位置带上self,self表示此实例对象
# 在类方法中,应当在第一个参数的位置带上cls,cls表示此类
# 如:
class A:
def __init__(self, name):
s.name = name
def print_(self):
print(self.name)
obj = A('hi')
obj.print_()
# 但self与cls的具体名称并不是一定的,之所以使用self和cls是因为它是约定俗成的,如果愿意,也可以替换成其他字符(但通常不建议这么做)
# 如下也能正常运行:
class B:
name = 'value'
@classmethod
def print_(c):
print(c.name)
B.print_()
单词缩写
全称 | 含义 | 简称 |
---|---|---|
automatic | 自动的 | auto |
information | 信息 | info |
addition | 添加 | add |
message | 消息 | msg |
function | 函数 | func |
error | 错误 | err |
object | 对象 | obj |
count | 计数 | cnt |
variable | 变量 | var |
... | ... | ... |