是否有一种机制可以注释掉大块的Python代码?

现在,我所能看到的注释代码的唯一方法是用#开始每一行,或者用三引号括起代码:""" "。

这样做的问题是在每行之前插入#很麻烦,而“”会使我想用作注释的字符串显示在生成的文档中。

在阅读了所有的评论后,答案似乎是“不”。


当前回答

没有三引号的唯一方法是添加一个:

if False:

然后缩进所有代码。请注意,代码仍然需要具有正确的语法。


许多Python ide可以为你在每一行添加#,也可以在取消注释时删除它们。同样地,如果您使用vi或Emacs,您可以创建一个宏来为您的代码块执行此操作。

其他回答

三引号对我来说是可以的。 您可以使用" ' foo " '作为文档字符串,使用""" bar """ "作为注释,反之亦然,以使代码更具可读性。

将三引号隐藏在一个不会被误认为文档字符串的上下文中,例如:

'''
...statements...
''' and None

or:

if False: '''
...statements...
'''

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

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

至少在VIM中,你可以选择你想要插入的文本的第一列,使用Block Visual模式(在非windows VIM中CTRL+V),然后在每行之前使用下面的序列加上#:

I#<esc>

在块可视化模式下,我移动到插入模式,光标在块的第一行之前。插入的文本在块中的每一行之前复制。