关于opencv:_,在Python中做什么

What does _, do in Python

本问题已经有最佳答案,请猛点这里访问。

有人能给我解释一下在python中uuu的功能吗?我在下面的代码中找到了这个。

1
2
3
4
5
@property
def frame(self):
    if self._enteredFrame and self._frame is None:
        _, self._frame = self._capture.retrieve (channel = self.channel)
        return self._frame

我以前从没见过这个。


_是一个变量名。

self._capture.retrieve返回带有2个元素的seqeonce,下面的语句将第一个元素赋给_,第二个元素赋给self._frame。(tuple解包)

1
_, self._frame = self._capture.retrieve(channel=self.channel)

通常,_用于忽略该值。


_和其他变量一样,只是一个变量,但是对于一个名为_的变量有一些(矛盾的)约定。您在这里看到的是,当您需要将结果赋给一个随后未使用的值时:retrieve方法返回两个值,而程序员只对第二个值感兴趣。

交互shell中还使用_来存储最后一个表达式的结果。

在某些代码中,_还用作将转换字符串的函数的名称,因此_("some string")将在特定语言的表中查找字符串,如果没有可用的转换,则返回相应的转换或原始字符串。