通常在Python中,应该使用_
来表示参数未使用。在
def example_basic(unused):
pass
变成
^{pr2}$如果有多个未使用的参数,则不能使用多个_
,因为它们会发生冲突,因此使用*_
:
def example_multiple(unused1, unused2):
pass
变成
def example_multiple(*_):
pass
最后,如果有多个非相邻参数未使用,应该怎么做?在
def example_non_adjacent(unused1, used, unused2):
return used
使用多个_
仍然不起作用,使用*_
也不起作用,因为它们是非相邻的。在
请注意,我非常希望更改API,但是为了这个问题,让我们假设这是不可能的。有没有一种方法可以在不使用# pylint: disable=unused-argument
来表示PyLint或者我不知道什么来表示PyCharm被忽略了吗?在
编辑:
我发布了一个需要这个的例子here
只要
del
他们。由于垃圾收集器的工作方式,它的速度非常快。在如果使用回调方法传递参数,则给它们一个正确的名称并
del
。不要将它们表示为未使用。在这是一个示例回调函数:
^{pr2}$Pythonistas通常不使用
_
参数的下划线名称是任何大小写都可能的。您可能误解了
_
下划线的用法是一个无用变量的名称。当我们不知道如何调用一个变量名和/或它不会被使用时,使用
_
是可以理解的:我见过使用以下习惯用法的代码
如果你真的有很多未使用的变量,我觉得很好。在
也就是说,仅仅因为变量未被使用并不意味着如果省略了它的正确名称,代码的可读性就更高。只有当您真的认为隐藏变量名可以提高代码的可读性和/或理解性时,才应该这样做。在
如果您连接几个下划线,Pylint(以及您代码的其他读者)也会很高兴。如果您这样做,Pylint不会抱怨未使用的参数:
我同意一些评论者的观点,认为这是丑陋的,我会尽力避免它。在
Pylint(和大多数人类读者,我想)也不会抱怨,如果你add the prefix ^{} 到你的函数名来传达它们是回调的事实,即使你不想使用它们,你也必须接收一些参数。这对我来说是个更好的解决办法。在
^{pr2}$相关问题 更多 >
编程相关推荐