如何修复“不允许BaseException”

问题描述 投票:0回答:2

我试图让这个脚本得到我所说的内容并将其打印在终端上,但我收到此错误

TypeError: catching classes that do not inherit from BaseException is not allowed

为此,我遵循了一个教程,他在运行版本 3.9.5 时工作得很好,我尝试查找此内容,但我发现没有任何帮助,如果您知道,请告诉我

 import speech_recognition
    import pyttsx3
    
    recognizer = speech_recognition.Recognizer()
    
    while True:
        try:
            with speech_recognition.Microphone() as mic:
                recognizer.adjust_for_ambient_noise(mic, duration=0.2)
                audio = recognizer.listen(mic)
    
                text = recognizer.recognize_google(audio)
                text = text.lower()
    
                print(f"Recognized {text}")
    
        except speech_recognition.UnknownValueError():
            recognizer = speech_recognition.Recognizer()
            continue
python-3.x exception speech-recognition except
2个回答
3
投票

你的

except speech_recognition.UnknownValueError():

应该是

except speech_recognition.UnknownValueError:

即它应该命名类型,而不是调用它并使用返回值。


0
投票

@卡米内罗。对我来说,经过两次迭代后,它会停止监听,没有错误(或继续无休止地监听)。你也有这样的情况吗

© www.soinside.com 2019 - 2024. All rights reserved.