如何在Python中写内联注释
在Python中,有没有什么方法可以结束单行注释呢?
就像这样
/* This is my comment */ some more code here...
9 个回答
3
我很想要那种行内注释的功能,主要是为了临时注释掉函数中的参数或者列表/字典中的元素。在其他语言中是可以做到的:
afunc(x, /*log=True*/, whatever=True)
alist = [1,2,3]
我想,唯一的解决办法就是把它们放在单独的行上,比如:
afunc(
x,
# log=True,
whatever=True,
)
alist = [
1,
# 2,
3,
]
不过,由于Python常常被用作快速原型开发的语言,而且函数(因为没有重载)通常有很多可选参数,这种解决方案让我觉得不太“Python风格”...
更新
不过我现在真的很喜欢这个“解决办法”,也改变了我对它不够Python风格的看法。此外,一些格式化工具,比如Black,如果你在参数或数组/字典的末尾加上注释,它会自动把参数或元素安排在单独的行上。这被称为魔法尾随逗号
4
不,Python里没有那种行内块注释的写法。
不过你可以把注释放在右边,这样就能在同一行里写代码和注释了。
不过,把注释放在代码左边会让阅读变得困难,所以最好还是这样做。
举个例子:
x = 1 # 我的变量
12
你可以插入行内注释。就像这样
x=1; """ Comment """; x+=1; print(x);
我的Python版本是 "3.6.9"
52
在Python中,空白字符非常重要,所以除了用#
符号的注释外,不允许其他类型的注释,这种注释会一直到行末。来看这段代码:
x = 1
for i in range(10):
x = x + 1
/* Print. */ print x
因为缩进决定了代码的范围,解析器(就是负责读取和理解代码的程序)没有好的办法来判断代码的执行顺序。它不能合理地去掉注释,然后再执行后面的代码。(这样做也会让人类读起来更费劲。)所以,Python不允许在代码中间加注释。
103
不,Python 中没有行内注释。
根据文档的说明:
注释是以一个井号(
#
)开始的,这个井号不能是字符串的一部分,并且注释会一直持续到这一行的末尾。注释表示逻辑行的结束,除非使用了隐式行连接的规则。语法会忽略注释;它们不是代码的一部分。