『Python』序列学习总结之六——如何命名规范的变量名

来源:互联网 发布:手机淘宝代付在哪里 编辑:程序博客网 时间:2024/05/19 15:24
        本内容主要参考《Python高级编程》以及自己的一些实践、公司的命名规范。 对于那些认为随便取个变量名也无所谓、只要自己看得懂的人, 请无视本文章。本文章的核心观点是: 代码应该便于阅读和理解、 好的代码本身就是对代码最好的注释。
#所有的都以PEP8为准
        1、恒定量(常量)使用全大写与下划线
        2、私有变量使用前导下划线和小写, 如: _message
        3、一般的变量则应该:
                ①: 全小写, 用下划线隔开
②: 表示类型的字母放在最前面
③: 作用或要完成的工作则在中间
④: 属于谁放在最后, 或可省略
如:numpy_creat_data_set_test    表示的意思是: 该变量是numpy类型, 被创建为一个数据集, 用于测试(该变量属于test这个函数内的局部函数)
又可以写成: numpy_creat_data_set    表示的意思是: 该变量是numpy类型的一个数据集

以上两种情况可以根据大家的需要来具体决定使用, 但是一般建议大家使用第二种。虽然第一种看起来的意义更明确, 更能让人明白该变量的来龙去脉, 但是在实际代码中, 我们在阅读代码时, 是可以根据上下文来知道该变量是属于谁的, 所以特地标明要用来做什么反而显得冗余

4、当一个变量被用于保存布尔值时, 最好使用 “is” 或 “has” 作为前缀, 这样更易于理解
5、当一个变量被用于保存序列时, 最好使用复数形式
6、当一个变量被用于临时保存时, 最好加上 temp_ 的前缀
7、当一个变量被用于作为字典时, 应该使用显式名称, 如一个用来保存个人地址的变量: person_address
8、应当避免使用通用名称、现有名称(即上下文已经使用过的变量, 当然i、j等循环变量除外)、更应当避免使用关键字, 如果非要使用则可以通过添加后缀下划线
以上是关于变量的命名规则, 下面谈谈关于类与类的属性的命名规则
9、类名使用驼峰命名法, 当定义的是模块的私有类时, 还可能有一个前导下划线
10、类的名称必须简明、精确, 并足以从中理解类所完成的工作。 常见的一个方法是表示其类型或特性的后缀, 例如: SQLEngine
11、对于基类而言, 可以使用一个Base或Abstract前缀, 如: BaseCookie
其次关于类中的属性的命名规则:
12、属性名称是用小写或者小写加上下划线命名的。 大部分时候, 它们表示对象的状态, 可以是一个名词或一个形容词, 在需要的时候也可以是一个小短语
13、特殊方法是以两个下划线开始和结束的
14、应尝试避免类及其特性名称之间的冗余, 如: SMTP.smtp_send()    # 命名空间中存在冗余信息
0 0