python基础之注释
注释的作用
Python 中的注释主要有以下几个作用:
-
代码解释说明
注释可以对代码进行解释说明,方便其他开发人员和你自己在日后阅读代码时能够更好地理解代码的含义和作用。能够准确理解代码的含义,也会有利于更快地进行代码的修改和维护。 -
代码调试
注释可以用来暂时禁用一行或多行代码,从而方便进行代码调试或测试。在需要在代码中暂时禁用一些语句或部分代码时,可以将其注释起来,而不必将其删除或者添加条件循环语句等。 -
生成文档
注释可以用来自动生成文档,方便其他开发人员进行阅读和使用。代码中包含的文档字符串可以通过一些工具自动生成文档,例如 sphinx 等。
因此,在编写代码时,注释是一个很重要的方面,尤其是对于一些规模较大的项目,良好的注释可以减少开发人员的沟通成本,帮助开发人员更好地理解代码和功能。
注释的分类
Python 中的注释主要分为两种类型:单行注释和多行注释。
1. 单行注释
单行注释以 # 开头,用于在代码的同一行内注释说明,如下:
# 这是一个单行注释的示例
2. 多行注释(文档注释)
多行注释以三个单引号(''')或三个双引号(""")开始和结束,用于在多行代码中注释说明,如下:
''' 这是一个多 行注释的示例 '''
或
""" 这也是一个多 行注释的示例 """
建议使用单行注释对某行代码进行说明,需要对大段代码进行注释和说明时,使用多行注释。
另外,Python 中还有一种特殊的注释叫做“文档字符串”,也即函数注释,文档字符串以三个单引号或双引号开始和结束,用于对函数、类、模块等进行说明和文档化。例如:
def my_function(): """ 这是一个函数的文档字符串示例 """ print("Hello, world!")
文档字符串虽然不是必需的,但编写文档字符串可以帮助其他开发人员更好地理解你的代码,并且可以通过一些工具自动生成文档,提高代码可读性和维护性。
注释最佳实践/说明
1. python解释器是不执行注释的
2. 单行注释用于对某行代码进行说明,其放在位置有2处:
1. 与代码同行,唯一代码之后。 #与代码空2个空格,#与注释内容空1个空格
2. 注释在代码上方:与代码对齐,与上面代码尽量空1行
3. 注释描述代码功能和作用:对于每个函数,它的输入、输出参数和加工处理的步骤都需要有注释,以便后来的人可以更好地理解代码的作用和效果。在解释函数或代码段时,请确保您清楚而准确地描述了它们的作用。
4. 使用简洁且易于理解的注释:注释应该传达必要的信息,同时不要重复代码功能或显而易见的操作。
5. 注释代码而不是思路:注释应该解释代码而不是该段代码实现的复杂思路。类或函数等的注释应该解释其要解决的问题,而不是实现代码的详细过程。
6. 在需要时加上空行:在一些代码段之间加上一些空行,可以提高代码的可读性,也可以帮助区分代码段和注释。
7. 使用 "docstrings":Python 有一种特殊的注释叫做 "docstrings",它们用来描述函数、类、模块等的用途和功能。正确地使用 "docstrings" 可以帮助生成文档和帮助使用者更好地理解代码。
8. 注释要规范、一致且易于维护:注释应该采用一种一致的格式和语法,便于阅读且易于维护。例如使用大写字母来写注释的标题,使用小写字母来写注释的内容。
总之,良好的注释应该能够让其他人甚至自己都更好地理解代码,提高代码的可读性、可维护性和复用性。大厂都是有编码规范的,其中就涉及注释。养成一个好的编码习惯,才不会被鄙视。
示例
1 ''' 2 模块注释(多行注释) 3 ''' 4 5 print("单行注释,用于对某行代码的说明") # 单行注释位于代码之后:#号与代码之间空2个空格,#号与注释之间空1个空格 6 7 # 我是单行注释,单行注释位于代码之上,与代码缩进一致,注释与上方代码(print("单行注释,用于对某行代码的说明"))空1行 8 print("单行注释,用于对某行代码的说明") 9 10 ''' 11 在这个示例中: 12 1. 函数的文档字符串使用了 "docstrings" 格式,描述了该函数的输入、输出和功能。 13 2. 函数体内使用注释,解释了代码的作用。 14 3. 注释使用了一致的格式和语法,易于阅读。 15 4. 注释描述的是代码的具体实现方式,而不是思路。 16 5. 灵活应用空行,提高了代码可读性。 17 具有很好的可读性以及易于维护和复用的特点 18 ''' 19 20 21 def add_two_numbers(num1, num2): 22 """ 23 This function adds two given numbers together and returns the result. 24 25 Args: 26 num1 (int or float): the first number to be added 27 num2 (int or float): the second number to be added 28 29 Returns: 30 int or float: the sum of `num1` and `num2` 31 """ 32 # Add the two numbers together and return the result 33 result = num1 + num2 34 return result
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!