您的“关注”和“点赞”,是信任,是认可,是支持,是动力…

如意见相佐,可留言。
本人必将竭尽全力试图做到准确和全面,终其一生进行修改补充更新。

文章目录

  • 1 Python 注释概述
  • 2 Python 注释的作用
    • 2.1 调试代码
    • 2.2 提高程序的可读性
  • 3 Python 单行注释
    • 3.1 Python 单行注释概述
    • 3.2 单行注释注释单行代码的情况
    • 3.3 单行注释注释多行代码的情况
    • 3.4 单行注释注意事项
      • 3.4.1 单行注释符号作为字符串的一部分存在
  • 4 Python 多行注释
    • 4.1 Python 多行注释概述
    • 4.2 三个连续的单引号注释
    • 4.3 三个连续的双引号注释
    • 4.4 多行注释也可以为函数提供说明文档
    • 4.5 多行注释注意事项
      • 4.5.1 多行注释不支持嵌套
      • 4.5.2 多行注释符号`'''`或`"""`作为字符串标记
  • 【友情链接】
    • 微信公众号:码农阿杰
    • 博客园
  • 【参考资料】
    • [Python 官网](https://www.python.org/)
    • [Python 3.8.2 documentation](https://docs.python.org/release/3.8.2/)

1 Python 注释概述

注释(Comments)是用来向开发者(用户)提示或解释某些代码的思路、作用和功能等,可以添加到代码中的任何位置。Python 解释器(Python Interpreter)在执行程序(代码)时会忽略注释部分,不做任何处理,即注释部分不会被 Python 解释器执行。

在代码中添加适当的注释量很重要,注释通常占源代码的 1/3 左右。

Python 支持两种类型的注释:单行注释和多行注释。

2 Python 注释的作用

2.1 调试代码

在调试(Debug)程序的过程中,单行注释可以用来临时快速注释某些代码,达到缩小错误范围、提高调试程序效率的目的。

具体操作如下:
在不确定具体是哪一行代码出错的情况下,我们可以先把觉得可能有问题的代码注释起来,然后再运行程序观察结果。如果程序可以正常执行,则可以说明错误就是由这段代码引起的;反之,如果依然出现相同的错误,则可以说明错误不是由这段代码引起的。

2.2 提高程序的可读性

注释的最大作用是提高程序的可读性,没有注释的程序是很难让人看懂的,说是天书也不为过。
更甚至,自己写的代码,过了一段时间以后,自己也会忘记思路或者目的。

3 Python 单行注释

3.1 Python 单行注释概述

Python 中是使用井号#作为单行注释的符号,其语法格式如下所示:

# 添加的注释内容

对以上语法格式的说明:

  • #作为单行注释的符号。
  • 从井号#开始,直到这行结束为止的所有内容都是注释。Python 解释器遇到#时,会忽略它后面的整行内容,即#之后的一行内容都属于注释部分。

3.2 单行注释注释单行代码的情况

单行注释注释单行代码时通常会将注释放在代码的右侧,与代码之间用两个空格隔开,如下所示:

print("码农阿杰")  # 输出笔者的微信公众号名称
print('https://www.cnblogs.com/manongajie/')  # 输出笔者的博客园博客地址
print('https://blog.csdn.net/manongajie/')  # 输出笔者的CSDN博客地址

3.3 单行注释注释多行代码的情况

单行注释注释多行代码时通常将注释放在代码的上一行,如下所示:

# 使用 print() 内置函数输出字符串
print("微信公众号:码农阿杰")
print("博客园博客地址 https://www.cnblogs.com/manongajie/")
print("CSDN 博客地址 https://blog.csdn.net/manongajie/")# 使用 print() 内置函数输出数字
print(520)
print(521)
print(1314)

3.4 单行注释注意事项

3.4.1 单行注释符号作为字符串的一部分存在

当单行注释符号#作为字符串的一部分出现时,就不能再将它当做单行注释标记,而应该当做是字符串的一部分(字符串的字符),如下所示:

print('# 微信公众号:码农阿杰')
print("# 博客园博客地址 https://www.cnblogs.com/manongajie/""")
print("# CSDN 博客地址 https://blog.csdn.net/manongajie/")

运行结果:

# 微信公众号:码农阿杰
# 博客园博客地址 https://www.cnblogs.com/manongajie/
# CSDN 博客地址 https://blog.csdn.net/manongajie/

对以上代码说明:

  • Python 没有将井号#当做单行注释标记,而是将它当做字符串的一部分。

4 Python 多行注释

4.1 Python 多行注释概述

多行注释指的是一次性注释程序中多行代码,也可以是一行代码。

Python 中支持使用三个连续的单引号'''分别作为注释的开头和结尾,或者三个连续的双引号"""分别作为注释的开头和结尾,一次性注释多行或单行内容。

多行注释通常用来为 Python 函数、类、模块等等添加功能、版本和作者等描述信息。

4.2 三个连续的单引号注释

三个连续的单引号注释内容具体格式如下:

'''
使用三个连续的单引号分别作为注释的开头和结尾
可以一次性注释多行内容或单行内容
'''

4.3 三个连续的双引号注释

"""
使用三个连续的双引号分别作为注释的开头和结尾
可以一次性注释多行内容或单行内容
"""

4.4 多行注释也可以为函数提供说明文档

在 Python 中可以通过 help()内置函数或者__doc__属性查看某个函数的说明文档,如下代码所示:

# 查看 print() 内置函数的说明文档
print('--- 用 help()内置函数查看说明文档 ---')
help(print)
print('--- 用 __doc__ 属性查看说明文档 ---')
print(print.__doc__)

运行结果:

--- 用 help()内置函数查看说明文档 ---
Help on built-in function print in module builtins:print(...)print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)Prints the values to a stream, or to sys.stdout by default.Optional keyword arguments:file:  a file-like object (stream); defaults to the current sys.stdout.sep:   string inserted between values, default a space.end:   string appended after the last value, default a newline.flush: whether to forcibly flush the stream.--- 用 __doc__ 属性查看说明文档 ---
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file:  a file-like object (stream); defaults to the current sys.stdout.
sep:   string inserted between values, default a space.
end:   string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.

其实,函数的说明文档,本质就是一段字符串(跟多行注释符号一致),都需要程序员自己编写,只不过作为说明文档,字符串的放置位置不同而已,函数的说明文档通常位于函数内部、所有代码的最前面。

如何为函数设置说明文档呢?如下所示:

# 定义一个比较数字大小的函数
def num_max(num1, num2):"""比较两个数字的大小:param num1:形参1,数字1:param num2:形参2,数字2:return:大的数字,max_num = num1 if num1 > num2 else num2"""max_num = num1 if num1 > num2 else num2return max_numresult = num_max(1, 2)
print(result)
print('--- 用 help() 内置函数查看 num_max() 的说明文档 ---')
help(num_max)
print('--- 用 __doc__ 属性查看 num_max() 的说明文档 ---')
print(num_max.__doc__)

运行结果:

2
--- 用 help() 内置函数查看 num_max() 的说明文档 ---
Help on function num_max in module __main__:num_max(num1, num2)比较两个数字的大小:param num1:形参1,数字1:param num2:形参2,数字2:return:大的数字,max_num = num1 if num1 > num2 else num2--- 用 __doc__ 属性查看 num_max() 的说明文档 ---比较两个数字的大小:param num1:形参1,数字1:param num2:形参2,数字2:return:大的数字,max_num = num1 if num1 > num2 else num2

4.5 多行注释注意事项

4.5.1 多行注释不支持嵌套

Python 多行注释不支持嵌套,如下所示为错误写法:

'''
外层注释'''内层注释'''
'''

4.5.2 多行注释符号'''"""作为字符串标记

多行注释符号'''"""也可以作为字符串的开始和结束标记。

Python 中当多行注释符号作为字符串的一部分出现时,就不能再将它们当做多行注释标记,而应该看做是字符串的一部分,如下所示:

str_info1 = '''微信公众号:码农阿杰'''
str_info2 = """博客园博客地址 https://www.cnblogs.com/manongajie/"""
str_info3 = "CSDN 博客地址 https://blog.csdn.net/manongajie/"print(str_info1)
print(str_info2)
print(str_info3)

运行结果:

微信公众号:码农阿杰
博客园博客地址 https://www.cnblogs.com/manongajie/
CSDN 博客地址 https://blog.csdn.net/manongajie/

对以上代码说明:

  • Python 没有将这里的三个引号当做是多行注释,而是将它们看作字符串的开始和结束标志。

【友情链接】

微信公众号:码农阿杰

博客园

【参考资料】

Python 官网

Python 3.8.2 documentation

Python 注释详解[学习 Python 必备基础知识][看此一篇就够了]相关推荐

  1. python变量详解_Python 变量详解[学习 Python 必备基础知识][看此一篇就够了]

    您的"关注"和"点赞",是信任,是认可,是支持,是动力...... 如意见相佐,可留言. 本人必将竭尽全力试图做到准确和全面,终其一生进行修改补充更新. 1 P ...

  2. 关于python语言的浮点数类型_Python 浮点数数据类型详解(float)[学习 Python 必备基础知识][看此一篇就够了]...

    原博文 2020-04-20 15:25 − > 您的"关注"和"点赞",是信任,是认可,是支持,是动力...... > 如意见相佐,可留言. &g ...

  3. Python 列表数据类型(list)[学习 Python 必备基础知识][看此一篇就够了]

    您的"关注"和"点赞",是信任,是认可,是支持,是动力- 如意见相佐,可留言. 本人必将竭尽全力试图做到准确和全面,终其一生进行修改补充更新. 文章目录 1 P ...

  4. 关于python的浮点数类型、以下_python入门教程Python 浮点数数据类型详解 [学习 Python 必备基础知识][看此一篇就够了]...

    python基础语法.jpg 您的"关注"和"点赞",是信任,是认可,是支持,是动力...... 如意见相佐,可留言. 本人必将竭尽全力试图做到准确和全面,终其 ...

  5. python元组元素的提取比_Python 元组数据类型(tuple)详解 [访问元组元素][修改元组元素][删除元组][学习 Python 必备基础知识][看此一篇就够了]...

    您的"关注"和"点赞",是信任,是认可,是支持,是动力...... 如意见相佐,可留言. 本人必将竭尽全力试图做到准确和全面,终其一生进行修改补充更新. 1 元 ...

  6. python复数类型转换_Python 复数数据类型详解(complex)[学习 Python 必备基础知识][看此一篇就够了]...

    您的"关注"和"点赞",是信任,是认可,是支持,是动力...... 如意见相佐,可留言. 本人必将竭尽全力试图做到准确和全面,终其一生进行修改补充更新. 1 复 ...

  7. 03 day1--javascript笔记pink老师-基础知识 看这一篇就够了!

    内容 链接 day1 基础知识大总结(JS使用.变量.数据运算.数组.函数.作用域) 链接 day2 对象 链接 day3 进阶API之DOM技术 链接 day4 进阶API之BOM技术 链接 day ...

  8. webrtc janus服务器调试工具 admin api 详解(二)调试janus看这一篇就够了!!

    在上一篇发布的时候离现在已经过去不少的时间, 这段时间也一直处理这个问题, 最终解决了它,因为自己内容的原因,自己也走不了少的弯路,比如增加一些配置问题, coturn在测试网站 是通的,但实际使用的 ...

  9. NIO详解Channel、Buffer、Selector看这一篇就够了

    NIO是同步阻塞队列-->IO复用模型很像,请仔细看这幅图 NIO和IO的到底有什么区别?有什么关系? 1.NIO是以块的方式处理数据,但是IO是以最基础的字节流形式去写入和读出的.所以在效率上 ...

最新文章

  1. 互联网协议 — HTTP/3 超文本传输协议第 3 版
  2. selendroid之inspector
  3. 谨慎注意WebBrowser控件的DocumentCompleted事件
  4. union 和 union all
  5. Taro+react开发(23)--componentWillReceiveProps
  6. 【转】STM32中的抢占优先级、响应优先级概念
  7. 小学阅读方法六种_小学数学速算六种方法
  8. 云管理平台为混合IT应用提供统一的方法
  9. 听音乐不过瘾?自制一个音乐播放器!| 原力计划
  10. Class.forName()、Class.forName().newInstance() 、New 三者区别!
  11. 程序员面试金典——18.13 最大字母矩阵
  12. matlab 剪裁视频教程,matlab截取一段视频和裁剪一小块视频区域
  13. CSS实现字体镂空效果、阴影效果、字体阴影效果
  14. MATLAB导数计算
  15. 修改了Excel默认打开方式后仍然使用WPS打开的解决办法
  16. 太阳直射点纬度计算公式_高中地理——每日讲1题(欧洲的气候、太阳高度角、日出时间)...
  17. linux中如何升级驱动程序,Redhat 如何升级显卡驱动?
  18. python-shixian考拉兹猜想
  19. 计算机cde盘怎么分配,windows vista的c d e盘是怎么分配的,我是新手完全不懂用途啊...
  20. 机器学习 部署 嵌入式_如何在移动和嵌入式设备上部署机器学习模型

热门文章

  1. ubantu20.04服务器使用docker以及docker-compose编排部署前后端分离个人博客项目(springboot+vue+mysql+redis)
  2. 前端常见中英文对照表
  3. 不是吧阿sir(1),史上最全
  4. 计算机毕设 SpringBoot 漫画网站系统 二次元漫画网站 漫画之家网站Java Vue MySQL数据库 远程调试 代码讲解
  5. 广州市车联网先导区V2X云控基础平台技术规范
  6. 关于Windows10虚拟机处理器数量的问题
  7. Mac电脑使用快捷键
  8. 美妆商家该如何依靠开发微商城建立品牌效应?
  9. DIY四周飞行器(小型无人机)附全部技术资料和设计文件
  10. 入耳式蓝牙耳机哪款音质最好?蓝牙耳机入耳式推荐!