如何在python中编写内联注释

Cea*_*ase 35 python comments commenting

有没有在python中结束单行注释的方法?

就像是

/*This is my comment*/ some more code here...
Run Code Online (Sandbox Code Playgroud)

iCo*_*dez 47

不,Python中没有内联注释.

文档:

注释以散列字符(#)开头,该散列字符不是字符串文字的一部分,并在物理行的末尾结束.注释表示逻辑行的结束,除非调用隐式行连接规则.语法忽略注释; 他们不是代币.


The*_*nse 25

Python中的空格非常重要,除了#到达行尾的注释之外,还不允许任何其他类型的注释.拿这个代码:

x = 1
for i in range(10):
             x = x + 1
/* Print. */ print x
Run Code Online (Sandbox Code Playgroud)

因为缩进确定了范围,所以解析器没有很好的方法来了解控制流.它无法合理地消除注释,然后执行代码.(这也使代码对人类的可读性降低.)因此没有内联注释.

  • 我不确定是否有必要将此归咎于解析器对空白的敏感性.如果你愿意的话,你可以说这条线从评论开始的地方开始......我认为更多的理念是,一条线的中间部分没有评论的位置.:-) (6认同)
  • 解析器不是唯一能读取代码的东西......就个人而言,我宁愿阅读python,其中行从字符开始的地方开始.这不是什么大不了的事,但是让python变得轻松有趣的是小事. (2认同)
  • 但是行延续呢?序列`\#` 引发了语法错误,因为显然[他们决定将空格作为行继续标记的一部分](https://youtu.be/Pa6fbOF3x8M)。我什至不能将它移到下一行,因为注释 * 终止 * 行继续。为什么?这种行为是荒谬的。序列 `\^J#` 应该只是在注释终止后产生一个隐式的行继续 *continuation*,或者应该允许 `\#`,或者需要一个愚蠢的内联注释将 `[comment] stuff` 解释为只是`东西`,包括所有后果。 (2认同)

小智 12

您可以插入内嵌注释。像这样

x=1; """ Comment """; x+=1; print(x);
Run Code Online (Sandbox Code Playgroud)

我的Python版本是“ 3.6.9