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不是函数,而是关键字或语句