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


Posted in Python onAugust 14, 2020

一、代码注释介绍

  • 注释就是对代码的解释和说明,其目的是让人们能够更加轻松地了解代码。
  • 注释是编写程序时,写程序的人给一个语句、程序段、函数等的解释或提示,能提高程序代码的可读性。
  • 在有处理逻辑的代码中,源程序有效注释量必须在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的语法,只是不知道代码要干什么

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python二分法实现实例
Nov 21 Python
Python中不同进制互相转换(二进制、八进制、十进制和十六进制)
Apr 05 Python
Python中使用Beautiful Soup库的超详细教程
Apr 30 Python
Python 3.6 性能测试框架Locust安装及使用方法(详解)
Oct 11 Python
python基础之包的导入和__init__.py的介绍
Jan 08 Python
Python列表解析配合if else的方法
Jun 23 Python
python 二维数组90度旋转的方法
Jan 28 Python
PyQt5笔记之弹出窗口大全
Jun 20 Python
python多线程与多进程及其区别详解
Aug 08 Python
Pytorch之finetune使用详解
Jan 18 Python
Python+Django+MySQL实现基于Web版的增删改查的示例代码
May 13 Python
解决python 执行shell命令无法获取返回值的问题
Dec 05 Python
Python发送邮件实现基础解析
Aug 14 #Python
Python压缩模块zipfile实现原理及用法解析
Aug 14 #Python
Python编写memcached启动脚本代码实例
Aug 14 #Python
Python自动巡检H3C交换机实现过程解析
Aug 14 #Python
基于python调用jenkins-cli实现快速发布
Aug 14 #Python
使用tensorflow进行音乐类型的分类
Aug 14 #Python
10行Python代码实现Web自动化管控的示例代码
Aug 14 #Python
You might like
解析php中array_merge与array+array的区别
2013/06/21 PHP
win7下memCache的安装过程(具体操作步骤)
2013/06/28 PHP
php检查日期函数checkdate用法实例
2015/03/19 PHP
thinkphp5+layui实现的分页样式示例
2019/10/08 PHP
javascript利用控件对windows的操作实现原理与应用
2012/12/23 Javascript
深入理解JavaScript是如何实现继承的
2013/12/12 Javascript
鼠标经过tr时,改变tr当前背景颜色
2014/01/13 Javascript
通过url查找a元素并点击
2014/04/09 Javascript
jquery修改网页背景颜色通过css方法实现
2014/06/06 Javascript
如何使用PHP+jQuery+MySQL实现异步加载ECharts地图数据(附源码下载)
2016/02/23 Javascript
微信小程序 wx.request(接口调用方式)详解及实例
2016/11/23 Javascript
JS中cookie的使用及缺点讲解
2017/05/13 Javascript
angular.js和vue.js中实现函数去抖示例(debounce)
2018/01/18 Javascript
详解离线安装npm包的几种方法
2018/11/25 Javascript
vue基础之模板和过滤器用法实例分析
2019/03/12 Javascript
通过JQuery,JQueryUI和Jsplumb实现拖拽模块
2019/06/18 jQuery
JavaScript实现随机五位数验证码
2019/09/27 Javascript
100行代码实现vue表单校验功能(小白自编)
2019/11/19 Javascript
[57:55]EG vs Fnatic 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
python改变日志(logging)存放位置的示例
2014/03/27 Python
Python ftp上传文件
2016/02/13 Python
Python实现变量数值交换及判断数组是否含有某个元素的方法
2017/09/18 Python
Python拼接字符串的7种方法总结
2018/11/01 Python
python threading和multiprocessing模块基本用法实例分析
2019/07/25 Python
python 解决flask 图片在线浏览或者直接下载的问题
2020/01/09 Python
Python-openCV读RGB通道图实例
2020/01/17 Python
使用Django搭建网站实现商品分页功能
2020/05/22 Python
Pytorch 解决自定义子Module .cuda() tensor失败的问题
2020/06/23 Python
Pycharm导入anaconda环境的教程图解
2020/07/31 Python
Python爬虫教程知识点总结
2020/10/19 Python
瑜伽国际:Yoga International
2018/04/18 全球购物
夏威夷咖啡公司:Hawaii Coffee Company
2019/09/19 全球购物
小学教师管理制度
2014/01/18 职场文书
简历的自我评价
2014/02/03 职场文书
打造高效课堂实施方案
2014/03/22 职场文书
2016党员干部反腐倡廉心得体会
2016/01/13 职场文书