Python代码注释规范代码实例解析

作者:蓝 寅 时间:2023-03-15 04:59:56 

一、代码注释介绍

  • 注释就是对代码的解释和说明,其目的是让人们能够更加轻松地了解代码。

  • 注释是编写程序时,写程序的人给一个语句、程序段、函数等的解释或提示,能提高程序代码的可读性。

  • 在有处理逻辑的代码中,源程序有效注释量必须在20%以上。

二、代码注释分类

行注释:在符号后那一行不会被编译(显示)

块注释:被块注释符号中间的部分不会被编译

三、python代码注释基础

Python中使用#表示单行注释。单行注释可以作为单独的一行放在被注释代码行之上,也可以放在语句或表达式之后。如下例子:

name = 'xiaohong' # 单行注释

# 单行注释
name = 'xiaohong'

Python中使用三个单引号或三个双引号表示多行注释。用在注释多写不下的情况,如下例子:

'''
这是使用三个单引号的多行注释
'''

"""
这是使用三个双引号的多行注释
"""

四、DocStrings介绍与使用

4.1 DocStrings介绍

文档字符串

是一个重要工具,用于解释文档程序,帮助你的程序文档更加简单易懂

4.2 python中使用DocStrings

在函数体的第一行使用一对三个单引号 ''' 或者一对三个双引号 """ 来定义文档字符串。你可以使用 doc(注意双下划线)调用函数中的文档字符串属性。

编写示例如下:


def add(num1,num2):
 """ 完成传入的两个数之和

:param num1: 加数1
 :param num2: 加数2
 :return: 和
 """
 return num1 + num2

print( add.__doc__ )

备注:DocStrings 文档字符串使用惯例:它的首行简述函数功能,第二行空行,第三行为函数的具体描述。

五、DocStrings常用编写风格

5.1 reST风格

这是现在流行的一种风格,reST风格,Sphinx的御用格式,比较紧凑。


"""
This is a reST style.

:param param1: this is a first param
:param param2: this is a second param
:returns: this is a description of what is returned
:raises keyError: raises an exception
"""

5.2 Google风格


"""
This is a groups style docs.

Parameters:
param1 - this is the first param
param2 - this is a second param

Returns:
This is a description of what is returned

Raises:
KeyError - raises an exception
"""

5.3 Numpydoc (Numpy风格)


"""
My numpydoc description of a kind
of very exhautive numpydoc format docstring.

Parameters
----------
first : array_like
the 1st param name `first`
second :
the 2nd param
third : {'value', 'other'}, optional
the 3rd param, by default 'value'

Returns
-------
string
a value in a string

Raises
------
KeyError
when a key error
OtherError
when an other error
"""

六、一些注释经验

  • 注释不是越多越好。对于一目了然的代码,不需要添加注释。

  • 对于复杂的操作,应该在操作开始前写上相应的注释。

  • 对于不是一目了然的代码,应该在代码之后添加注释。

  • 绝对不要描述代码。一般阅读代码的人都了解Python的语法,只是不知道代码要干什么

来源:https://www.cnblogs.com/dream66/p/12826947.html

标签:python,代码,注释,规范
0
投稿

猜你喜欢

  • python 同时运行多个程序的实例

    2021-03-25 07:36:20
  • python导包的几种方法(自定义包的生成以及导入详解)

    2021-11-19 21:33:41
  • Flask框架实现的前端RSA加密与后端Python解密功能详解

    2021-07-26 16:28:13
  • PHP三层结构(上) 简单三层结构

    2023-06-20 06:36:07
  • Python 中 f-Strings 的作用

    2022-12-04 11:44:55
  • 订单转化率之回访确认

    2009-08-24 12:40:00
  • vue使用iframe嵌入网页的示例代码

    2024-05-05 09:12:04
  • JavaScript每天必学之事件

    2024-04-22 13:08:43
  • Python中操作文件之write()方法的使用教程

    2023-12-29 06:06:13
  • Python实现的栈、队列、文件目录遍历操作示例

    2022-06-10 00:12:35
  • JavaScript实现图片自动加载的瀑布流效果

    2024-06-05 09:13:43
  • 利用Python上传日志并监控告警的方法详解

    2022-08-23 15:31:01
  • JS实现的倒计时效果实例(2则实例)

    2023-08-23 17:12:05
  • 基于MTCNN/TensorFlow实现人脸检测

    2021-07-05 23:51:19
  • 浅谈django 模型类使用save()方法的好处与注意事项

    2021-05-17 10:43:59
  • 为什么在MySQL中不建议使用UTF-8

    2024-01-25 17:53:29
  • 在Python中使用SimpleParse模块进行解析的教程

    2021-04-11 12:17:53
  • Python 包含汉字的文件读写之每行末尾加上特定字符

    2022-02-01 13:13:46
  • python 判断自定义对象类型

    2021-08-29 22:09:37
  • mysql 5.7版本修改密码的简单方法

    2024-01-28 06:14:38
  • asp之家 网络编程 m.aspxhome.com