好的,我知道三引号字符串可以作为多行注释。例如,
"""Hello, I am a
multiline comment"""
and
'''Hello, I am a
multiline comment'''
但从技术上讲,这些是字符串,对吧?
我已经在谷歌上搜索并阅读了Python风格指南,但我无法找到一个技术上的答案,为什么没有正式实现多行/* */类型的注释。我对使用三引号没有问题,但我有点好奇是什么导致了这个设计决定。
好的,我知道三引号字符串可以作为多行注释。例如,
"""Hello, I am a
multiline comment"""
and
'''Hello, I am a
multiline comment'''
但从技术上讲,这些是字符串,对吧?
我已经在谷歌上搜索并阅读了Python风格指南,但我无法找到一个技术上的答案,为什么没有正式实现多行/* */类型的注释。我对使用三引号没有问题,但我有点好奇是什么导致了这个设计决定。
当前回答
我怀疑你会得到一个比“Guido觉得不需要多行注释”更好的答案。
圭多在推特上说:
Python提示:可以将多行字符串用作多行注释。除非用作文档字符串,否则它们不会生成代码!: -)
其他回答
因为#惯例是一种常见的惯例,用多行注释确实没有什么是用#符号注释做不到的。这是一个历史的偶然,就像/*…*/返回PL/I的注释,
假设他们只是被认为是不必要的。由于键入#注释非常简单,多行注释可以由许多单行注释组成。
另一方面,对于HTML来说,更需要多行程序。继续输入<!——像这样的评论——>。
多行注释很容易被破坏。如果你有以下一个简单的计算器程序?
operation = ''
print("Pick an operation: +-*/")
# Get user input here
试着用多行注释注释它:
/*
operation = ''
print("Pick an operation: +-*/")
# Get user input here
*/
哎呀,你的字符串包含结束注释分隔符。
使用IDLE的多行注释:
Mac OS X,在代码选择后,使用Ctrl+3注释代码块,并使用Ctrl+4取消注释。 Windows,在代码选择之后, 用Ctrl+Alt+3注释代码块,用Ctrl+At+4取消注释。
三引号在文档字符串中用作多行注释。# comments被用作内联注释,人们已经习惯了。
大多数脚本语言也没有多行注释。也许这就是原因?
参见PEP 0008,注释部分
看看你的Python编辑器是否为块注释提供了一些快捷键。Emacs支持它,Eclipse也支持,大概大多数像样的ide都支持。