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判断变量是否已经定义的方法
Aug 18 Python
Python实现的最近最少使用算法
Jul 10 Python
python装饰器与递归算法详解
Feb 18 Python
Python数据类型详解(二)列表
May 08 Python
使用Python3制作TCP端口扫描器
Apr 17 Python
python定时关机小脚本
Jun 20 Python
python将list转为matrix的方法
Dec 12 Python
Python面向对象程序设计构造函数和析构函数用法分析
Apr 12 Python
Pytorch抽取网络层的Feature Map(Vgg)实例
Aug 20 Python
浅谈keras保存模型中的save()和save_weights()区别
May 21 Python
pdf论文中python画的图Type 3 fonts字体不兼容的解决方案
Apr 24 Python
教你使用一行Python代码玩遍童年的小游戏
Aug 23 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开发中四种查询返回结果分析
2011/01/02 PHP
PHP经典设计模式之依赖注入定义与用法详解
2019/05/21 PHP
基于PHP实现邮箱验证激活过程详解
2020/10/28 PHP
跟着Jquery API学Jquery之一 选择器
2010/04/07 Javascript
理解Javascript_05_原型继承原理
2010/10/13 Javascript
图片无缝滚动代码(向左/向下/向上)
2013/04/10 Javascript
判断一个变量是数组Array类型的方法
2013/09/16 Javascript
深入理解jQuery中live与bind方法的区别
2013/12/18 Javascript
JavaScript实现生成GUID(全局统一标识符)
2014/09/05 Javascript
nodejs批量修改文件编码格式
2015/01/22 NodeJs
JQuery实现动态添加删除评论的方法
2015/05/18 Javascript
jquery实现美观的导航菜单鼠标提示特效代码
2015/09/06 Javascript
JS实现动态增加和删除li标签行的实例代码
2016/10/16 Javascript
jquery-mobile基础属性与用法详解
2016/11/23 Javascript
nodejs集成sqlite使用示例
2017/06/05 NodeJs
webpack4的迁移的使用方法
2018/05/25 Javascript
EasyUI 数据表格datagrid列自适应内容宽度的实现
2019/07/18 Javascript
node 文件上传接口的转发的实现
2019/09/23 Javascript
layui清除radio的选中状态实例
2019/11/14 Javascript
vue 使用微信jssdk,调用微信相册上传图片功能
2020/11/13 Javascript
Python网络爬虫项目:内容提取器的定义
2016/10/25 Python
详解 Python中LEGB和闭包及装饰器
2017/08/03 Python
Python 在字符串中加入变量的实例讲解
2018/05/02 Python
python实现支付宝当面付(扫码支付)功能
2018/05/30 Python
Python删除n行后的其他行方法
2019/01/28 Python
在Python 中同一个类两个函数间变量的调用方法
2019/01/31 Python
Python 操作 ElasticSearch的完整代码
2019/08/04 Python
太阳镜仓库,售价20美元或更少:Sunglass Warehouse
2016/09/28 全球购物
上班迟到检讨书
2014/01/10 职场文书
历史专业学生的自我评价
2014/02/28 职场文书
优秀实习生主要事迹
2014/05/29 职场文书
供电工程专业求职信
2014/08/09 职场文书
2014乡镇机关党员个人对照检查材料思想汇报
2014/10/09 职场文书
绍兴鲁迅故居导游词
2015/02/09 职场文书
PhpSpreadsheet中文文档 | Spreadsheet操作教程实例
2021/04/01 PHP
web前端之css水平居中代码解析
2021/05/20 HTML / CSS