我多年来一直在兜圈子,试图弄清楚这一点。为什么我会收到此属性错误?我尝试过使用绝对引用,但遇到了同样的问题。PyCharm 还突出显示了 CascadeClassifier、cvtColor 和 COLOR_BGR2GRAY,称它在 cv2.py 中找不到引用。我不确定更多信息是否与解决此问题相关,因此请询问是否需要更多信息。
import cv2
face_cascade = cv2.CascadeClassifier('read_only/haarcascade_frontalface_default.xml')
eye_cascade = cv2.CascadeClassifier('read_only/haarcascade_eye.xml')
grayed_images = []
for x in np_images:
gray_img = cv2.cvtColor(x, cv2.COLOR_BGR2GRAY)
grayed_images.append(gray_img)
print(x)
Run Code Online (Sandbox Code Playgroud) 我刚刚遇到了 Python 类型提示的奇怪行为。
>>> def x(y: int):
return y
>>> d=x('1')
>>> print(type(d))
<class 'str'>
>>> d
'1'
Run Code Online (Sandbox Code Playgroud)
当我将数字作为字符串传递到参数被转换为 int 的函数时,它仍然会生成字符串。我认为这种意想不到的行为的关键在于它不是铸造,而是暗示。但为什么它会这样呢?如果我传递“one”作为参数,它会给我一个 NameError。