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写的一个文本编辑器
Jan 23 Python
Python中运行并行任务技巧
Feb 26 Python
python中assert用法实例分析
Apr 30 Python
关于Python面向对象编程的知识点总结
Feb 14 Python
Django卸载之后重新安装的方法
Mar 15 Python
Python 中字符串拼接的多种方法
Jul 30 Python
Python实现操纵控制windows注册表的方法分析
May 24 Python
pandas删除行删除列增加行增加列的实现
Jul 06 Python
利用python-docx模块写批量生日邀请函
Aug 26 Python
python各层级目录下import方法代码实例
Jan 20 Python
JetBrains PyCharm(Community版本)的下载、安装和初步使用图文教程详解
Mar 19 Python
Python替换NumPy数组中大于某个值的所有元素实例
Jun 08 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
自动把纯文本转换成Web页面的php代码
2009/08/27 PHP
超级实用的7个PHP代码片段分享
2012/01/05 PHP
php生成静态文件的多种方法分享
2012/07/17 PHP
腾讯QQ微博API接口获取微博内容
2013/10/30 PHP
destoon实现商铺管理主页设置增加新菜单的方法
2014/06/26 PHP
PHP自带方法验证邮箱是否存在
2016/02/01 PHP
PHP实现自动识别原编码并对字符串进行编码转换的方法
2016/07/13 PHP
Ajax+Jpgraph实现的动态折线图功能示例
2019/02/11 PHP
js正确获取元素样式详解
2009/08/07 Javascript
jQuery 位置函数offset,innerWidth,innerHeight,outerWidth,outerHeight,scrollTop,scrollLeft
2010/03/23 Javascript
js RuntimeObject() 获取ie里面自定义函数或者属性的集合
2010/11/23 Javascript
JS(JQuery)操作Array的相关方法介绍
2014/02/11 Javascript
jQuery scrollFix滚动定位插件
2015/04/01 Javascript
JavaScript函数表达式详解及实例
2017/05/05 Javascript
认识less和webstrom的less配置方法
2017/08/02 Javascript
使用jQuery 操作table 完成单元格合并的实例
2017/12/27 jQuery
简单了解JavaScript中常见的反模式
2019/06/21 Javascript
使用jQuery实现掷骰子游戏
2019/10/24 jQuery
[50:04]DOTA2上海特级锦标赛D组小组赛#2 Liquid VS VP第二局
2016/02/28 DOTA
[53:10]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs VG 第一场
2018/04/11 DOTA
[01:20]2018DOTA2亚洲邀请赛总决赛战队LGD晋级之路
2018/04/07 DOTA
python实现图片文件批量重命名
2020/03/23 Python
简单了解python高阶函数map/reduce
2019/06/28 Python
使用Python操作ArangoDB的方法步骤
2020/02/02 Python
实例教程 一款纯css3实现的数字统计游戏
2014/11/10 HTML / CSS
JD Sports马来西亚:英国领先的运动鞋和运动服饰零售商
2018/03/13 全球购物
美国精品地毯网站:Boutique Rugs
2020/03/04 全球购物
GC是什么?为什么要有GC?
2013/12/08 面试题
公务员的自我鉴定
2013/10/26 职场文书
大学生入党思想汇报
2014/01/01 职场文书
请假条范文大全
2014/04/10 职场文书
学校交通安全责任书
2014/08/25 职场文书
委托书格式范文
2015/01/28 职场文书
活动经费申请报告
2015/05/15 职场文书
2019年第四季度财务部门工作计划
2019/11/02 职场文书
Python中使用subprocess库创建附加进程
2021/05/11 Python