Python 3.x Try/except不起作用,我使用Pycharm和python3.9作为我项目的解释器

Python 3.x Try/except不起作用,我使用Pycharm和python3.9作为我项目的解释器,python-3.x,pycharm,Python 3.x,Pycharm,当我使用try/except并运行它时,它显示进程已完成,退出代码为0 我在main.py上使用它,除了函数之外的所有函数都可以正常使用 import speech_recognition as sr listener = sr.Recognizer() try: with sr.Microphone() as source: print('listening..') voice = listener.listen(source) comman

当我使用
try
/
except
并运行它时,它显示
进程已完成,退出代码为0

我在main.py上使用它,除了
函数之外的所有函数都可以正常使用

import speech_recognition as sr

listener = sr.Recognizer()
try:
    with sr.Microphone() as source:
       print('listening..')
       voice = listener.listen(source)
       command = listener.recognize_google(voice)
       print(command)
except:
    pass

当我使用try/except并运行它时,它显示进程已完成,退出代码为0

这是正常的行为:每个程序退出时都会发出退出代码。默认情况下,该值为0,表示“好的,一切正常”。退出代码1表示“哦,您输入的日期不是日期”。退出代码2是为致命错误保留的,例如“哦,不,我不小心删除了你所有的照片!”。对于特殊情况,例如分段错误的-11,有更多的退出代码,但只要您编写小型python程序,就不需要了解它们。
因此,当您捕捉到错误(如果有)时,程序的退出代码将为0,除非代码中的其他地方存在未修补的错误,或者您通过调用
sys.exit
手动更改退出代码(注意:这也会导致程序立即退出)。
目前,您正在捕获错误,因此您的程序将继续工作,但您没有通知用户发生错误。您应该捕获错误,然后将其打印出来,如下例所示:

试试看:
f=open(“/path/to/some/file”,“r”)#使用现有的和不存在的文件进行尝试!
打印(f.read())
f、 关闭()
除FileNotFoundError外,错误为e:#处理不存在的文件
打印(e)
例外情况除外,如e:#处理所有其他错误
打印(e)

当您以相同的方式处理所有错误时,除了
块之外的第二个
块就足够了。

请:请不要截图。复制超过输出:这对我们帮助更大,而且对于那些寻找相同错误(和解决方案)的人来说也更容易。当你询问有关stackoverflow的问题时,请以格式化文本而不是屏幕截图的形式添加代码、输入/输出结果。除了块之外,你不打印任何内容,并静默地“传递”它。看看try/except不是函数,而是关键字或语句