在Python中创建多行注释的方法?

我最近开始研究Python,但是找不到如何实现多行注释。大多数语言都有块注释符号,例如


/* 


*/

我在Python中尝试过此方法,但它引发了错误,因此这可能不是正确的方法。Python实际上是否具有多行注释功能?


收到一只叮咚
浏览 1017回答 3
3回答

慕尼黑8549860

您可以使用三引号引起来的字符串。如果它们不是文档字符串(类/函数/模块中的第一件事),则将其忽略。'''This is a multilinecomment.'''(请确保'''适当缩进引线,以避免出现IndentationError。)Guido van Rossum(Python的创建者)在推特上发了一条“专业提示”。但是,Python的样式指南PEP8 倾向于使用连续的单行注释,这也是在许多项目中都可以找到的。编辑人员通常都有捷径可以轻松地做到这一点。

慕少森

Python确实具有多行字符串/注释语法,即除非用作文档字符串,否则多行字符串不会生成字节码 -就像- #前置注释一样。实际上,它的行为就像评论一样。另一方面,如果您说必须在官方文档中记录此行为才是真正的注释语法,那么可以,您可以肯定地说这不是语言规范的一部分。无论如何,您的编辑器也应该能够轻松注释掉所选区域(通过#在每行的前面分别放置一个)。如果没有,请切换到可以的编辑器。没有某些文本编辑功能的Python编程可能会很痛苦。找到合适的编辑器(并知道如何使用它)可以极大地改变人们对Python编程经验的看法。编辑器不仅能够注释掉选定的区域,还应该能够轻松地向左和向右移动代码块,并在按Enter键时将光标自动置于当前的缩进级别。代码折叠也很有用。为了防止链路衰减,这是Guido van Rossum的推文的内容:

幕布斯6054654

从接受的答案...您可以使用三引号引起来的字符串。如果它们不是文档字符串(类/函数/模块中的第一件事),则将其忽略。这是不正确的。与注释不同,三引号字符串仍然会被解析,并且在语法上必须有效,无论它们在源代码中的位置如何。如果您尝试运行此代码...def parse_token(token):    """    This function parses a token.    TODO: write a decent docstring :-)    """    if token == '\\and':        do_something()    elif token == '\\or':        do_something_else()    elif token == '\\xor':        '''        Note that we still need to provide support for the deprecated        token \xor. Hopefully we can drop support in libfoo 2.0.        '''        do_a_different_thing()    else:        raise ValueError你会得到...ValueError: invalid \x escape...在Python 2.x上...SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 79-80: truncated \xXX escape...在Python 3.x上。进行解析器忽略的多行注释的唯一方法是...elif token == '\\xor':    # Note that we still need to provide support for the deprecated    # token \xor. Hopefully we can drop support in libfoo 2.0.    do_a_different_thing()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python