首页 > 技术文章 > python编码安全规范

package 2021-09-20 22:44 原文

python编码安全规范

学习完本篇,你将会有一套自己的编码规范

Python命名规范

  • 简单描述:
  1. 普通变量命名:
    小写字母,字母之间用_分割
    如:定义一个临时变量,用来存储时间年this_a_year
  2. 全局变量名(类变量,在java中相当于static变量):
    大写字母,单词之间用_分割
    NUMBER
    COLOR_WRITE
  3. 类成员变量
    以_开头(2个下划线),其他的图通变量一样
    如:定义一个价格的变量_prince,
    定义一个距离的变量_instance_var
  4. 私有实例变量(外部访问会报错)
    以__开头(2个下划线),其他和普通变量一样
    __private_var
  5. 类名:
    单词首字母大写
    ConfigUnit
  6. 包名:
    小写字母,单词之间用_分割
    ad_stats
  7. 模块名:
    小写字母,单词之间用_分割
    ad_stats.py
  • 注意细节
  1. 文件名
    全小写,可使用下划线

  2. 应该是简短的、小写的名字。如果下划线可以改善可读性可以加入。如mypackage。
  3. 函数&方法
    函数名应该为小写,可以用下划线风格单词以增加可读性。如:myfunction,my_example_function。
    注意:混合大小写仅被允许用于这种风格已经占据优势的时候,以便保持向后兼容。
  4. 函数和方法的参数
    总使用“self”作为实例方法的第一个参数。总使用“cls”作为类方法的第一个参数。
    如果一个函数的参数名称和保留的关键字冲突,通常使用一个后缀下划线好于使用缩写或奇怪的拼写。
  5. 全局变量
    对于from M import *导入语句,如果想阻止导入模块内的全局变量可以使用旧有的规范,在全局变量上加一个前导的下划线。
    注意:应避免使用全局变量
  6. 变量
    变量名全部小写,由下划线连接各个单词。如color_WHITE,this_is_a_variable = 1

注意
1.不论是类成员变量还是全局变量,均不使用 m 或 g 前缀。
2.私有类成员使用单一下划线前缀标识,多定义公开成员,少定义私有成员。
3.变量名不应带有类型信息,因为Python是动态类型语言。如 iValue、names_list、dict_obj 等都是不好的命名。

  1. 常量
    常量名所有字母大写,由下划线连接各个单词如MAX_OVERFLOW,TOTAL。

  2. 异常
    以“Error”作为后缀。

  3. 缩写
    命名应当尽量使用全拼写的单词,缩写的情况有如下两种:

  4. 常用的缩写,如XML、ID等,在命名时也应只大写首字母,如XmlParser。

  5. 命名中含有长单词,对某个单词进行缩写。这时应使用约定成俗的缩写方式。
    例如:
    function 缩写为 fn
    text 缩写为 txt
    object 缩写为 obj
    count 缩写为 cnt
    number 缩写为 num,等。

  6. 前导后缀下划线
    一个前导下划线:表示非公有。
    一个后缀下划线:避免关键字冲突。
    两个前导下划线:当命名一个类属性引起名称冲突时使用。
    两个前导和后缀下划线:“魔”(有特殊用途)对象或者属性,例如__init__或者__file__。绝对不要创造这样的名字,而只是使用它们。
    注意:关于下划线的使用存在一些争议。
    Python 用下划线作为变量前缀和后缀指定特殊变量。

推荐阅读