Python基础之注释的三种写法(单行、多行、文档注释)详解

 更新时间:2026年06月29日 09:26:22   作者:我材不敲代码  
本章深入解析Python注释写法,涵盖单行注释、多行注释与文档注释三大类型,强调注释在提升代码可读性、后期维护及团队协作中的的关键作用,通过实例与官方PEP8规范,指导读者掌握注释最佳实践,规避常见误区

在上一章,我们系统学习了Python输入input与输出print函数,掌握了程序与用户交互的核心方法。本章我们将学习Python编程的基础必备知识点——注释写法。注释是代码的灵魂,是新手入门必须养成的编码习惯,也是企业项目开发的硬性规范,对代码可读性、后期维护、团队协作至关重要。

一、核心概念与背景

1.1 什么是Python注释

基本定义:

Python注释是编写在代码中的解释性文本,不会被编译器解释执行,仅用于开发者阅读、理解代码逻辑,不影响程序运行结果。

简单来说:注释是写给人看的,代码是写给机器跑的。

# 注释演示示例
​​​​​​​print("代码会执行") # 本行注释不会执行,仅做说明

1.2 注释的核心作用

 重要性分析:

无论是新手练习还是企业级项目开发,规范写注释都是必备技能,核心价值如下:

  • 提升可读性:快速看懂代码逻辑、功能用途,避免自己写的代码隔天看不懂
  • 方便后期维护:项目迭代、bug修复时,大幅降低代码理解成本
  • 助力团队协作:团队开发中,让同事快速读懂你的代码,提升协作效率
  • 辅助代码调试:可临时注释无效代码、测试代码,快速排查问题

1.3 注释典型应用场景

场景类型具体应用技术要点
新手练习标注代码功能、记录学习思路简洁易懂、贴合代码逻辑
函数、类、核心逻辑功能说明规范统一、参数清晰、返回值明确
临时屏蔽代码、分段测试功能快速注释、灵活启用/禁用代码
项目文档、接口说明、功能备注标准化文档注释,适配工具生成文档

二、Python三大注释详解

2.1 单行注释(最常用)

单行注释是Python最简单的注释方式,以# 井号开头,从#开始到本行末尾所有内容均为注释内容。

语法格式:# 注释内容

代码示例:

# 单行注释:定义用户姓名
username = "Python学习者"

# 单行注释:定义用户年龄
age = 25

# 输出用户信息
print(f"用户:{username},年龄:{age}")  # 行尾注释:打印基础用户信息

核心特点:

  • 仅作用于当前行,简洁灵活
  • 可单独成行,也可放在代码行末尾
  • 适合简单逻辑、单行代码说明

2.2 多行注释(批量注释)

当需要注释多行文本、大段逻辑说明、批量屏蔽代码时,使用多行注释。Python无专属多行注释语法,通过三引号(单/双三引号)实现。

语法格式:

'''多行注释内容 多行注释内容 '''

"""多行注释内容 多行注释内容 """

代码示例:

'''
多行注释演示
功能:计算两个数字的和
作者:Python学习者
时间:2026-05-30
'''
def add_num(a, b):
    return a + b

"""
双三引号多行注释
可用于批量屏蔽测试代码
print("测试代码1")
print("测试代码2")
"""
print(add_num(10, 20))

核心特点:

  • 支持任意行数文本注释,无需逐行加#
  • 单三引号、双三引号功能完全一致,可随意使用
  • 适合大段说明、批量代码屏蔽

2.3 文档注释(项目必备)

文档注释是规范化的多行注释,专门用于描述函数、类、模块的功能、参数、返回值、使用说明,是企业开发标准规范,可通过工具自动生成项目文档。

使用规范:仅放在函数、类、模块的第一行,使用双三引号包裹。

基础示例:模块注释

"""
项目模块:基础计算模块
功能:实现加减乘除基础运算
作者:Python学习者
版本:1.0
更新时间:2026-05-30
"""

print("基础计算模块加载完成")

进阶示例:函数文档注释(标准企业写法)

def calculate_avg(num_list):
    """
    计算数字列表的平均值
    Args:
        num_list (list): 传入数字列表
    Returns:
        float: 返回列表平均值,空列表返回0
    """
    if not num_list:
        return 0
    return sum(num_list) / len(num_list)

# 调用测试
print(calculate_avg([85, 90, 88]))

 高阶示例:类文档注释

class Student:
    """
    学生信息管理类
    实现学生成绩添加、平均分计算功能
    """
    def __init__(self, name, age):
        """
        初始化学生信息
        Args:
            name (str): 学生姓名
            age (int): 学生年龄
        """
        self.name = name
        self.age = age
        self.grades = []

    def add_grade(self, grade):
        """添加学生成绩"""
        self.grades.append(grade)

三、实操快捷键(提升编码效率)

日常编码中,手动逐行写注释效率极低,主流编辑器均支持注释快捷键,新手必掌握!

编辑器注释快捷键功能说明
PyCharmCtrl + /选中代码一键批量单行注释/取消注释
VS CodeCtrl + /批量单行注释,Shift+Alt+A 多行注释
IDLEAlt + 3/4Alt+3注释,Alt+4取消注释

四、常见问题与避坑方案

4.1 注释嵌套报错

问题现象:三引号注释内部嵌套三引号,程序报错

"""
外层注释
""" 内层嵌套三引号 """
"""

解决方案:注释内部避免嵌套同类型三引号,或使用转义符,优先统一注释格式

4.2 注释冗余、过度注释

问题现象:简单代码堆砌大量无用注释,代码臃肿

错误写法:

# 定义a变量,赋值为10
a = 10
# 打印a变量
print(a)

解决方案:简单代码不注释,复杂逻辑、核心算法、业务逻辑重点注释

4.3 行尾注释间距不规范

问题现象:代码和注释无间距,可读性差,不符合PEP8规范

规范:行尾注释与代码之间空两个空格,再写#注释

五、官方编码最佳实践(PEP8规范)

5.1 注释书写规范

  • 单行注释:# 后面必须加一个空格,再书写注释内容
  • 独立行注释:用于解释下一行/下一段代码,禁止无意义空注释
  • 文档注释:函数、类、模块必须标配,参数、返回值描述清晰
  • 注释语言统一:项目中统一中文或英文,不要混合使用

5.2 注释使用原则

核心口诀:简单代码不注释,复杂逻辑详注释,业务功能必注释,冗余代码不瞎注

5.3 安全与开发小贴士

  • 禁止在注释中记录密码、密钥、接口token等敏感信息
  • 迭代代码时同步更新注释,避免注释与代码逻辑不符
  • 删除废弃代码,不要单纯注释留存,避免项目冗余

六、本章小结

核心要点回顾

  • 单行注释:# 开头,适用于单行简单说明、行尾备注
  • 多行注释:三引号实现,适用于大段说明、批量屏蔽代码
  • 文档注释:标准化注释,适配函数、类、模块,企业开发必备
  • 掌握编辑器快捷键,遵循PEP8注释规范,规避常见注释误区

以上就是Python基础之注释的三种写法(单行、多行、文档注释)详解的详细内容,更多关于Python注释写法的资料请关注脚本之家其它相关文章!

相关文章

  • Python3学习urllib的使用方法示例

    Python3学习urllib的使用方法示例

    本篇文章主要介绍了Python3学习urllib的使用方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • 详解如何管理多个Python版本和虚拟环境

    详解如何管理多个Python版本和虚拟环境

    这篇文章主要介绍了详解如何管理多个Python版本和虚拟环境,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • Macbook air m1安装python/anaconda全过程(图文)

    Macbook air m1安装python/anaconda全过程(图文)

    这篇文章主要介绍了Macbook air m1安装python/anaconda全过程(图文),文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • python中Pexpect的工作流程实例讲解

    python中Pexpect的工作流程实例讲解

    在本篇文章里小编给大家整理的是一篇关于python中Pexpect的工作流程实例讲解内容,有兴趣的朋友们可以学习下。
    2021-03-03
  • ubuntu在线服务器python Package安装到离线服务器的过程

    ubuntu在线服务器python Package安装到离线服务器的过程

    这篇文章主要介绍了ubuntu在线服务器python Package安装到离线服务器,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • 浅谈python元素如何去重,去重后如何保持原来元素的顺序不变

    浅谈python元素如何去重,去重后如何保持原来元素的顺序不变

    这篇文章主要介绍了浅谈python元素如何去重,去重后如何保持原来元素的顺序不变?具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • Python使用socket模块实现简单tcp通信

    Python使用socket模块实现简单tcp通信

    这篇文章主要介绍了Python使用socket模块实现简单tcp通信,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • Python文本处理之按行处理大文件的方法

    Python文本处理之按行处理大文件的方法

    下面小编就为大家分享一篇Python文本处理之按行处理大文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • AI:如何训练机器学习的模型

    AI:如何训练机器学习的模型

    这篇文章主要介绍了是如何进行机器学习的模型的训练,全文逻辑清晰,简单易懂,如果您正在学习机器学习那么可以参考下,说不定会有不一样的收货
    2021-04-04
  • 使用Python实现设置Word文档文本的颜色

    使用Python实现设置Word文档文本的颜色

    在文档编辑和排版过程中,文本颜色是一项重要的视觉元素,本文将详细介绍如何使用 Spire.Doc for Python 库为 Word 文档中的文本设置颜色,希望可以帮助大家轻松实现丰富多彩的文档效果
    2026-05-05

最新评论