• python通用规范-2


    文章目录

    2.1 类、接口和函数
    2.1.1 类和接口的注释写在类声明(class ClassName:)所在行的下一行,并向后缩进4个空格
    2.1.2 公共函数的注释写在函数声明(`def FunctionName(self):`)所在行的下一行,并向后缩进4个空格
    2.2 属性
    2.2.1 公共属性的注释写在属性声明的上方,与声明保持同样的缩进。行内注释应以`#`和一个空格作为开始,与后面的文字注释以一个空格隔开
    2.3 格式
    2.3.1 模块注释写在文件的顶部,导入(`import`)部分之前的位置,不需要缩进
    2.3.2 文档字符串多于一行时,末尾的`"""`要自成一行
    2.3.3 注释必须与其描述的代码保持同样的缩进,并放在其上方相邻位置
    2.4 建议
    2.4.1 源程序有效注释量(包括DocString)应该在20%以上
    2.4.2 注释的内容要清楚,防止注释二义性
    2.4.3 避免在注释中使用缩写
    2.4.4 保持代码和注释的同步修改
    1.2.4.5 有含义的变量应该加上注释
    2.4.6 全局变量要有较详细的注释
    2.1 类、接口和函数

    2.1.1 类和接口的注释写在类声明(class ClassName:)所在行的下一行,并向后缩进4个空格

    说明:功能描述除了描述类或接口功能外,还要写明与其他类或接口之间的关系;属性清单列出该类或接口的接口方法的描述;修改记录包括修改人,修改日期及修改内容。
    正确示例:
    class TreeError(libxmlError):
    """
    功能描述:
    接口:
    修改记录:
    """
    1
    2
    3
    4
    5
    6
    7
    2.1.2 公共函数的注释写在函数声明(def FunctionName(self):)所在行的下一行,并向后缩进4个空格

    说明:公共函数注释的内容包括功能描述、输入参数、输出参数、返回值、调用关系(函数、表)、异常描述,修改记录等。异常描述必须说明异常的含义及什么条件下抛出该异常,除描述函数内部抛出的异常外。
    # 正确示例:
    def load_batch(fpath):
    """
    功能描述:
    参数:
    返回值:
    异常描述:
    修改记录
    """
    1
    2
    3
    4
    5
    6
    7
    8
    9
    2.2 属性

    2.2.1 公共属性的注释写在属性声明的上方,与声明保持同样的缩进。行内注释应以#和一个空格作为开始,与后面的文字注释以一个空格隔开

    说明:行内注释的形式是在语句的上一行中加注释。行内注释要少用。它们应以#和一个空格作为开始。

    # 错误示例:
    #Compensate for border
    x = x + 1

    # 正确示例:
    # Compensate for border
    x = x + 1
    1
    2
    3
    4
    5
    6
    7
    2.3 格式

    2.3.1 模块注释写在文件的顶部,导入(import)部分之前的位置,不需要缩进

    说明:每次模块代码修改后要写明修改信息,修改信息包括修改人,修改日期及修改内容。
    # 正确示例:
    """
    功 能:XXX类,该类主要涉及XXX功能
    版权信息:华为技术有限公司,版本所有(C) 2010-2017
    修改记录:2015-3-17 12:00 XXX XXXXXXXX 创建
    2017-3-17 12:00 XXX XXXXXXXX 修改 XXX
    """
    1
    2
    3
    4
    5
    6
    7
    2.3.2 文档字符串多于一行时,末尾的"""要自成一行

    说明:对于只有一行的文档字符串,把"""放到同一行也没问题。单行可以放同一行。
    错误示例:
    """Return a foobang
    Optional plotz says to frobnicate the bizbaz first."""

    正确示例:
    """Return a foobang
    Optional plotz says to frobnicate the bizbaz first.
    """
    正确示例:
    """API for interacting with the volume manager."""
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    2.3.3 注释必须与其描述的代码保持同样的缩进,并放在其上方相邻位置

    说明:注释应与其描述的代码相近,并与所描述的代码保持同样的缩进。对代码的注释应放在其上方相邻位置,不可放在下面。
    # 错误示例:注释与所描述的代码有不同的缩进
    # get replicate sub system index and net indicator
    repssn_ind = ssn_data[index].repssn_index
    repssn_ni = ssn_data[index].ni

    # 正确示例:
    # get replicate sub system index and net indicator
    repssn_ind = ssn_data[index].repssn_index
    repssn_ni = ssn_data[index].ni

    # 正确示例:
    if image_service is not None:
    # Deletes the image if it is in queued or saving state
    self._delete_image(context, image_meta['id'], image_service)
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    2.4 建议

    2.4.1 源程序有效注释量(包括DocString)应该在20%以上

    说明:注释的原则是有助于对程序的阅读理解,没有类型信息,IDE不能帮助提示,如果没有注释,动态语言就很难理解,注释不宜太多也不能太少,注释描述必须准确、易懂、简洁。
    2.4.2 注释的内容要清楚,防止注释二义性

    说明:错误的注释不但无益反而有害。注释的要点是准确,没有二义性。把代码说清楚是目的。
    2.4.3 避免在注释中使用缩写

    说明:在使用缩写时或之前,应对缩写进行必要的说明。
    2.4.4 保持代码和注释的同步修改

    说明:边写代码边注释,修改代码时始终优先更新相应的注释,以保证注释与代码的一致性。不再有用的注释要删除。
    1.2.4.5 有含义的变量应该加上注释

    说明:对于有物理含义的变量,如果其命名不是充分自注释的,在声明时必须加以注释,说明其物理含义。变量的注释应放在其上方相邻位置。
    # 错误示例:
    # 没有注释
    _MAX_ACT_TASK_NUMBER = 1000

    # 正确示例:
    # maximum number of active statistic tasks
    _MAX_ACT_TASK_NUMBER = 1000
    1
    2
    3
    4
    5
    6
    7
    2.4.6 全局变量要有较详细的注释

    说明:全局变量要有较详细的注释,包括对其功能、取值范围、哪些函数或过程修改它以及存取时注意事项等的说明。
    ————————————————
    版权声明:本文为CSDN博主「zhao12501」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/zhao12501/article/details/115455082

    A thousand journey is started by taking the first step.
  • 相关阅读:
    python基础(十七、变量进阶
    python基础(十六、变量进阶
    python基础(十五、变量进阶
    python基础(十四、变量进阶
    python基础(十三、综合应用
    MySQL-索引失效原理
    MySQL-忘记密码
    OSI七层模型
    Python-socket通信
    Python-编程小技巧
  • 原文地址:https://www.cnblogs.com/chengjian-physique/p/14995391.html
Copyright © 2020-2023  润新知