python变量命名规则

0x00 前言

1
最近在读requests模块的源码,好的代码读起来让人心旷神怡。回想之前写的代码变量命名也是胡写一通。决定好好总结一番,并在以后的书写留意。虽然电脑并不会再议变量的名称,但值得在意的是,好的命名,能使你的程序更有可读性。

0x01 全局变量名(类变量,在java中相当于static变量)

1
2
3
4
5
6
7
大写字母,单词之间用_分割
NUMBER
COLOR_WRITE
对于from M import *导入语句,如果想阻止导入模块内的全局变量可以使用旧有的规范,在全局变量上加一个前导的下划线。
<!-- more -->
*注意*:应避免使用全局变量

0x02 普通变量

1
2
3
4
5
6
7
8
9
10
小写字母,单词之间用_分割
this_is_a_var
*注意*:
1.不论是类成员变量还是全局变量,均不使用 m 或 g 前缀。
2.私有类成员使用单一下划线前缀标识,多定义公开成员,少定义私有成员。
3.变量名不应带有类型信息,因为Python是动态类型语言。如 iValue、names_list、dict_obj 等都是不好的命名。

0x03 实例变量

1
2
3
4
5
6
7
以_开头,其他和普通变量一样
_price
_instance_var
私有实例变量(外部访问会报错):
__开头(2个下划线),其他和普通变量一样
__private_var

0x04 专有变量

1
2
3
__开头,__结尾,一般为python的自有变量,不要以这种方式命名
__doc__
__class__

0x05 未完待续

参考链接

------*** end*** ------