如何解决还有另一种编写此代码的方法吗?这似乎很难理解
我在youtube的OpenCV课程中看到了这一点,但没有得到。 有人可以解释一下这是什么吗?有没有更简单的方法可以编写此部分?
import cv2
event = [i for i in dir(cv2) if 'EVENT' in i]
解决方法
那叫list comprehenstion
。类似于
import cv2
event = []
for i in dir(cv2):
if 'EVENT' in i:
event.append(i)
dir
用于从cv2
获取所有有效属性,然后,如果当前属性(i
)的名称上带有EVENT
,则将其存储在event
上。
下面的代码将显示['EVENT_1','EVENT_3']
。
class CV2:
EVENT_1 = 1
two = 2
def EVENT_3():
return 3
cv2 = CV2()
print([i for i in dir(cv2) if 'EVENT' in i])
,
dir
命令是Python(docs)中的内置命令,用于列出对象上的所有属性。
因此,此命令将遍历cv2中的所有属性,并过滤名称中带有“ EVENT”的属性。
为使表达更具表现力,我将列出您感兴趣的EVENT属性
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。