如何在Python中注释掉一段代码块

554

有没有一种机制可以注释掉大量的Python代码?

目前,我所知道注释代码的方式是在每行前加上# 或将代码用三个引号括起来:"""

这些方式的问题在于:在每一行前添加#太麻烦,而"""会使我想用作注释的字符串出现在生成的文档中。

经过阅读所有评论,答案似乎是“没有”。


3
这个问题之前在 Stack Overflow 上被回答过,具体可以看 *为什么 Python 没有多行注释?*。 - ChristopheD
专业实践的附加指南,“不要使用三引号”,使其与其他帖子区分开来... - AjayKumarBasuthkar
13
叹气。又有一个有用而非重复的问题被标记为重复……这个问题要求解决方案,而另一个问题则将答案(即没有解决方案)作为先决条件来提出它所要问的问题。 - Helen
3
Ctrl + / 可以在 PyCharm 中使用。 - Lakhwinder Singh Dhillon
1
Perl允许您使用文档语法进行块注释,以使其不会出现在文档中。这就是为什么我们有多种方法来完成事情的原因。这被称为“灵活性”。 - mpersico
对于Jupyter,使用 Crtl + / 进行注释,使用 Crtl - / 进行取消注释。 - circassia_ai
19个回答

6

在使用Visual Studio的Python工具时,块可以通过Ctrl+K, Ctrl+C 进行注释,也可以通过Ctrl+K, Ctrl+U 进行取消注释。


1
这同样适用于Visual Studio Code。 - Eric Rohlfs
在 Windows 上,对于 VS Code 的 ctrl + / - Deep Chatterjee

6
是的,可以(根据你所使用的编辑器)。在 PyDev 中(以及在 Aptana Studio 和 PyDev 中):
  • Ctrl + 4 - 注释选定代码块

  • Ctrl + 5 - 取消注释选定代码块


但它不符合PEP8格式。 - Romulus

6
Eclipse + PyDev 中,Python 块注释类似于 Eclipse Java 块注释;选择要注释的行并使用 Ctrl + / 进行注释。要取消已注释的块,请执行相同的操作。

4
唯一注释掉Python代码(即被解释器忽略的代码)的机制是 #
正如您所说,您还可以使用字符串字面值,它们不会被解释器忽略,但对程序执行可能完全无关。

2
Eclipse中使用PyDev, 您可以选择一个代码块并按下Ctrl + #

1
取消注释块,请使用Ctrl+Shift+#。 - xingzhi.sg
这在Komodo-Edit中也适用于Python。 - zhihong

1

对我来说,三引号没问题。 您可以使用''' foo '''用于文档字符串,使用""" bar """用于注释或反之,以使代码更易读。


我的问题与三引号有关,因为它们实际上正在被检查语法。这是一个不必要的开销,对于注释来说是多余的。例如:如果你在Python 3中运行'''/NPF''',它会抛出一个语法错误。所以Python 3正在检查每个三引号的语法有效性。如果你切换到#并注释该行,则会跳过它。 - continuousqa

1
在Eric4中有一种简单的方法:选择一个块,按下Ctrl+M来注释整个块或按下Ctrl+alt+M来取消注释。

1

另一种基于编辑器的解决方案:在Emacs中使用文本“矩形”。

高亮要注释的代码,然后按C-x-r-t #

要取消注释的代码:高亮,然后按C-x-r-k

我每天都使用这个功能。 (当然分配了快捷键。)

这和强大的正则表达式搜索/替换是我容忍Emacs其他“怪癖”的原因。


0

使用像SciTe这样的好编辑器,选择您的代码,按下Ctrl + Q,完成。

如果您没有支持块注释的编辑器,可以在代码块的开头和结尾使用三引号字符串来“有效地”注释掉它。虽然这不是最佳实践。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接