用opencv打开摄像头后 按esc 无法退出 什么原因?

用opencv打开摄像头后 按esc 无法退出 什么原因?

import cv2
import numpy as np #导入库
cap = cv2.VideoCapture(0) #设置摄像头 0是默认的摄像头 如果你有多个摄像头的话呢,可以设置1,2,3....
while True:   #进入无限循环
    ret,frame = cap.read() #将摄像头拍到的图像作为frame值
    cv2.imshow('frame',frame) #将frame的值显示出来 有两个参数 前一个是窗口名字,后面是值
    if cv2.waitKey(1) == 27: #按下 Esc退出 (27是按键ESC对应的ASCII值)
        break
cap.release()  #常规操作
cv2.DestroyAllWindows()

我想要达到的结果

你打印一下看下你的cv2.waitkey()返回值有没有问题,有些时候linux下这函数返回会出问题,这情况的话就需要用位运算强制转成0-255
cv2.waitKey(1) & 0xFF ==27