无尘阁日记

无尘阁日记

python的#号注释和'''注释的区别
2026-03-14

在 Python 中,#''' ''' 都经常被拿来写“注释”,但它们 本质上并不是同一种东西。理解这一点以后,你以后写代码就不会混乱了。

下面用最清晰的方式讲。

一、# 是真正的注释

# 是 Python 语法层面定义的 单行注释符号

特点:

  • 解释器 完全忽略

  • 只作用于 一行

  • 是标准注释写法

示例:

# 这是一个注释
a = 10  # 变量a赋值

运行程序时:

print(a)

Python 根本不会处理 # 后面的内容。

所以:

# 才是正式注释。

二、''' ''' 其实是字符串

很多人以为:

'''
这是注释
'''

这是多行注释。

其实不是。

它在 Python 里本质是:

多行字符串(multiline string)

示例:

'''
这是一个字符串
'''

Python 会把它当作:

str

只是这个字符串没有被使用。

三、为什么看起来像注释

因为如果字符串 没有赋值给变量,Python 会:

  • 创建这个字符串

  • 然后立即丢弃

所以程序运行效果和注释一样。

例如:

'''
这段文字不会被使用
'''
a = 10

程序仍然正常运行。

但其实 Python 仍然解析了它

四、''' ''' 的真正用途

''' ''' 最重要的用途不是注释,而是:

文档字符串(docstring)

用于说明:

  • 函数

  • 模块

示例:

def add(a, b):
    '''
    计算两个数的和
    '''
    return a + b

然后可以这样查看:

help(add)

输出:

计算两个数的和

所以:

三引号主要用于文档说明。

五、两者的核心区别

对比#''' '''
本质注释字符串
是否被解释器解析不解析会解析
使用范围单行多行
推荐用途注释代码写文档说明

六、为什么很多人用 ''' 注释代码

有一个原因:

临时注释多行代码方便。

例如:

'''
print("test")
print("debug")
'''

不用每行写 #

但严格来说:

这不是官方推荐方式。

七、真正推荐的多行注释写法

Python 官方建议:

# 第一行说明
# 第二行说明
# 第三行说明

或者使用编辑器快捷键。

例如在 PyCharm 或 Visual Studio Code 中:

多选代码后:

Ctrl + /

就会自动加 #

八、一个非常容易记住的方法

记一句话:

# 是给程序看的
''' 是给人看的

更准确一点是:

# 是注释
''' 是文档