这个问题在这里已有答案:
有没有一种机制可以注释掉大块的Python代码?
现在,我可以看到注释代码的唯一方法是使用 # 开始每一行,或者将代码括在三引号中: """ .
#
"""
这些问题是在每行之前插入 # 很麻烦, """ 使得我想用作注释的字符串出现在生成的文档中 .
阅读完所有评论后,答案似乎是“不” .
另一种基于编辑器的解决方案:Emacs中的文本“矩形” .
突出显示要注释掉的代码,然后是C-x-r-t#
要取消注释代码:突出显示,然后是C-x-r-k
我每天都在使用这个 . (当然,分配给热键 . )
这种强大的正则表达式搜索/替换是我容忍Emacs的其他“怪癖”的原因 .
M-x注释区域,在Emacs'Python模式中 .
在不会被误认为文档字符串的上下文中隐藏三引号,例如:
''' ...statements... ''' and None
要么:
if False: ''' ...statements... '''
三重报价对我来说还可以 . 您可以使用'''foo'''作为文档字符串,使用“”“bar”“”作为注释,反之亦然,以使代码更具可读性 .
在Mac上的JetBrains PyCharm中,使用Command /来注释/取消注释所选的代码块 . 在Windows上,使用CTRL / .
我在Windows机器上使用Notepad++,选择你的代码,输入 CTRL-K . 要取消注释,请选择代码并按Ctrl Shift K.
CTRL-K
顺便说一句,Notepad作为Python编辑器很好用 . 具有自动完成,代码折叠,语法突出显示等功能 . 它在演讲和啤酒中都是免费的!
在Eric4上有一个简单的方法:选择一个块,输入Ctrl M来注释整个块,或者按Ctrl Alt M取消注释 .
在使用Python Tools for Visual Studio的Visual Studio中,可以通过Ctrl K,Ctrl C注释掉块,并通过Ctrl K,Ctrl U取消注释 .
注释掉Python代码(理解为解释器忽略的代码)的唯一机制是the # .
正如您所说,您也可以使用string literals,它们不会被解释器忽略,但可能与程序执行完全无关 .
至少在VIM中,您可以使用块可视模式(非Windows VIM中的 CTRL+V )选择要插入的第一列文本,然后使用此序列在每行之前添加 # :
CTRL+V
I#<esc>
在块可视模式下, I 移动到插入模式,光标位于第一行的块之前 . 插入的文本在块中的每一行之前复制 .
I
comm=''' Junk, or working code that I need to comment. '''
您可以用您选择的变量替换 comm ,该变量可能更短,易于触摸,并且您知道在您的程序中不会(也不会)出现 . 示例: xxx , oo , null , nil .
comm
xxx
oo
null
nil
在Eclipse中使用PyDev,您可以选择代码块并按Ctrl# .
Python没有这样的机制 . 在每行前面添加 # 以阻止评论 . 有关更多信息,请参阅PEP 8 . 大多数Python IDE都支持一种机制,可以自动为您执行block-with-pound-signs . 例如,在我的机器上的IDLE中,它是Alt 3和Alt 4 .
Don't use triple-quotes; 如您所发现的,这是为了文档字符串而不是阻止注释,尽管它具有类似的效果 . 如果你只是暂时评论一下,这可以作为临时措施 .
在vi:
转到块顶部并用字母a标记 .
转到块的底部并用字母b标记
然后做
:'a,'b s!^!#!
使用一个很好的编辑器,如SciTe,选择你的代码,按Ctrl Q并完成 .
如果您没有支持块注释的编辑器,则可以在代码块的开头和结尾使用三引号字符串来“有效”地将其注释掉 . 但这不是最好的做法 .
没有三重引号的唯一方法是添加:
if False:
然后缩进所有代码 . 请注意,代码仍需要具有正确的语法 .
许多Python IDE可以在每个选定的行上为您添加 # ,并在取消注释时删除它们 . 同样,如果您使用vi或Emacs,您可以创建一个宏来为您执行此代码块 .
是的,有(取决于你的编辑) . 在PyDev(和Aptana Studio与PyDev):
Ctrl 4 - 注释所选块
Ctrl 5 - 取消注释所选块
在Eclipse PyDev中,Python块注释类似于Eclipse Java块注释;选择要评论的行并使用Ctrl /进行评论 . 要取消注释已注释的块,请执行相同的操作 .
我知道的唯一治疗方法是一位优秀的编辑 . 抱歉 .
19 回答
另一种基于编辑器的解决方案:Emacs中的文本“矩形” .
突出显示要注释掉的代码,然后是C-x-r-t#
要取消注释代码:突出显示,然后是C-x-r-k
我每天都在使用这个 . (当然,分配给热键 . )
这种强大的正则表达式搜索/替换是我容忍Emacs的其他“怪癖”的原因 .
M-x注释区域,在Emacs'Python模式中 .
在不会被误认为文档字符串的上下文中隐藏三引号,例如:
要么:
三重报价对我来说还可以 . 您可以使用'''foo'''作为文档字符串,使用“”“bar”“”作为注释,反之亦然,以使代码更具可读性 .
在Mac上的JetBrains PyCharm中,使用Command /来注释/取消注释所选的代码块 . 在Windows上,使用CTRL / .
我在Windows机器上使用Notepad++,选择你的代码,输入
CTRL-K
. 要取消注释,请选择代码并按Ctrl Shift K.顺便说一句,Notepad作为Python编辑器很好用 . 具有自动完成,代码折叠,语法突出显示等功能 . 它在演讲和啤酒中都是免费的!
在Eric4上有一个简单的方法:选择一个块,输入Ctrl M来注释整个块,或者按Ctrl Alt M取消注释 .
在使用Python Tools for Visual Studio的Visual Studio中,可以通过Ctrl K,Ctrl C注释掉块,并通过Ctrl K,Ctrl U取消注释 .
注释掉Python代码(理解为解释器忽略的代码)的唯一机制是the # .
正如您所说,您也可以使用string literals,它们不会被解释器忽略,但可能与程序执行完全无关 .
至少在VIM中,您可以使用块可视模式(非Windows VIM中的
CTRL+V
)选择要插入的第一列文本,然后使用此序列在每行之前添加#
:在块可视模式下,
I
移动到插入模式,光标位于第一行的块之前 . 插入的文本在块中的每一行之前复制 .您可以用您选择的变量替换
comm
,该变量可能更短,易于触摸,并且您知道在您的程序中不会(也不会)出现 . 示例:xxx
,oo
,null
,nil
.在Eclipse中使用PyDev,您可以选择代码块并按Ctrl# .
Python没有这样的机制 . 在每行前面添加
#
以阻止评论 . 有关更多信息,请参阅PEP 8 . 大多数Python IDE都支持一种机制,可以自动为您执行block-with-pound-signs . 例如,在我的机器上的IDLE中,它是Alt 3和Alt 4 .Don't use triple-quotes; 如您所发现的,这是为了文档字符串而不是阻止注释,尽管它具有类似的效果 . 如果你只是暂时评论一下,这可以作为临时措施 .
在vi:
转到块顶部并用字母a标记 .
转到块的底部并用字母b标记
然后做
使用一个很好的编辑器,如SciTe,选择你的代码,按Ctrl Q并完成 .
如果您没有支持块注释的编辑器,则可以在代码块的开头和结尾使用三引号字符串来“有效”地将其注释掉 . 但这不是最好的做法 .
没有三重引号的唯一方法是添加:
然后缩进所有代码 . 请注意,代码仍需要具有正确的语法 .
许多Python IDE可以在每个选定的行上为您添加
#
,并在取消注释时删除它们 . 同样,如果您使用vi或Emacs,您可以创建一个宏来为您执行此代码块 .是的,有(取决于你的编辑) . 在PyDev(和Aptana Studio与PyDev):
Ctrl 4 - 注释所选块
Ctrl 5 - 取消注释所选块
在Eclipse PyDev中,Python块注释类似于Eclipse Java块注释;选择要评论的行并使用Ctrl /进行评论 . 要取消注释已注释的块,请执行相同的操作 .
我知道的唯一治疗方法是一位优秀的编辑 . 抱歉 .