1.异常种类
python中的异常种类非常多,每个异常专门用于处理某一项异常!!!
下面是一些常用的异常:
2.异常基础
在编程过程中为了增加友好性、容错性和健壮性,在程序出现bug时一般不会将错误信息显示给用户,而是现实一个提示的页面,通俗来说就是不让用户看见大黄页!!!还有,有时我们不希望一个小bug的出现让整个程序都崩溃,自动退出或者蓝屏,我们需要抓取这个错误异常,并进行处理,让用户能够继续使用下去。
3.注:在python3中,except Exception , ex的别名方法已经不能使用,逗号被认为是两种异常的分隔符,而不是取别名。
下面是一个实例:
4.更多的异常在这里:
如果程序发生的异常不在你设定的异常之中,那么依然会报错。
5. 这个例子中,你只设置了捕获IndexError,而实际会发生一个ValueError,因此它依然会报错。
要同时捕获多个异常如何写呢?
7.程序会按异常的先后顺序进行捕获,任意一个被捕获,则进行异常处理,并忽略try会后的代码和别的异常处理代码。
万能异常:Exception
在python的异常中,有一个万能异常:Exception,他可以捕获任意异常,相当于一个人把所有的活全干了。那你可能要问了,既然有这个万能异常,其他异常是不是就可以不需要了!
当然不是,对于特殊处理或提醒的异常需要先定义,用于准确判断错误类型,存储错误日志,而最后定义Exception用来确保程序正常运行。
如果被监测程序是你自己编写的,那你可以在程序进程结束的时候主动去通知监测进程。如果不是,而你要监测它的运行情况,那么这和 *** 作系统有关。Windows和Linux下的处理方式是不一样的。
出现闪退的原因可能有很多,需要进一步排查。以下是一些常见问题及解决方法:1. 程序中存在死循环或者阻塞 *** 作:如果程序中存在死循环或者阻塞 *** 作,会导致GUI界面无响应或者崩溃。可以在代码中添加定时器、线程等机制来避免这种情况。
2. 内存泄漏:如果程序运行过程中内存占用不断增加而没有释放,则会导致程序崩溃。可以使用Python自带的gc模块进行内存管理和回收。
3. 依赖库版本不匹配:如果使用了第三方库,并且版本与当前系统不兼容,则会导致程序崩溃。可以尝试更新依赖库到最新版本并重新运行程序。
4. 调用外部资源失败:如果调用了外部资源(如文件、网络等),但是调用失败,则会导致程序异常退出。可以检查是否正确设置路径、权限等参数,并确保外部资源可访问。
5. 其他未知错误:除以上几种情况之外,还有可能出现其他未知错误导致闪退。此时建议通过日志记录、debug工具等方式进行排查和分析。
总之,在开发过程中要注意编写健壮性强的代码,并及时处理异常情况,以提高软件稳定性和用户体验。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)