Python3 基础:错误处理
来源:互联网 发布:曼秀雷敦润唇啫喱知乎 编辑:程序博客网 时间:2024/05/29 04:45
Python所有的错误都是从BaseException
类派生的,常见的错误类型和继承关系看这里:
https://docs.python.org/3/library/exceptions.html#exception-hierarchy
错误处理
首先看代码:
class Err(object): def show(self,i): try: r = 10 / int(i) print(r) except ZeroDivisionError as e: print('except:', e) else: print('no error!') finally: print('finally') print('END!')
Python使用 try...except...finally...
来处理错误。
可以使用raise
抛出错误。
调试
方法一:print()
打印。
方法二:assert
断言,如果断言失败,assert语句本身就会抛出 AssertionError,在运行.py文件的时候可以使用 python3 -o xxx.py
关闭断言。关闭后,你可以把所有的 assert 语句当成 pass 来看。
assert n != 0, 'n is zero!'
方法三:logging
import logginglogging.basicConfig(level=logging.INFO)
logging的好处,它允许你指定记录信息的级别,有debug,info,warning,error
等几个级别,当我们指定level=INFO时,logging.debug就不起作用了
。同理,指定level=WARNING
后,debug和info
就不起作用了。这样一来,你可以放心地输出不同级别的信息,也不用删除,最后统一控制输出哪个级别的信息。
方法四:pdb
启动Python的调试器pdb,让程序以单步方式运行,可以随时查看运行状态。
以 -m pdb
的方式运行py文件:
$ python3 -m pdb err.py
输入 l
查看代码,输入 n
单步执行代码,输入命令p 变量名
来查看变量,输入命令q
结束调试,退出程序。
方法五:pdb.set_trace()
这个方法也是用pdb,但是不需要单步执行,我们只需要import pdb
,然后,在可能出错的地方放一个pdb.set_trace()
,就可以设置一个断点。
方法六:使用IDE【 PyCharm 】
这个是最好用的方法。
- Python3 基础:错误处理
- Python3基础(九) 错误和异常
- 错误处理基础指南
- php基础-错误处理
- Swift基础 错误处理
- PHP基础--错误处理
- python3.3 django错误处理“sre_constants.error: nothing to repeat”
- python3.X中简单错误处理,和Python2区别
- python3错误处理“sre_constants.error: nothing to repeat”
- php基础之错误处理
- python3基础
- python3基础
- python3基础
- Python3.4字符串基础及每次处理一个字符
- Lua基础 编译、运行、错误处理
- Lua基础 编译、运行、错误处理
- Go语言基础入门--函数,错误处理
- php学习之基础五 错误处理
- 剑指offer经典编程(六)
- An Experimental Survey on Correlation Filter-based Tracking
- 【Unity开发】GameObject
- 浅析Qt的事件机制
- PHP快速排序法
- Python3 基础:错误处理
- c++中在类外定义函数
- LeetCode 12 Integer to Roman
- CFX系列(二):CXF处理复杂的对象
- Fetch.Type和FetchMode
- ...........0000000000000000
- Java POI 生成Word文档
- ButterKnife配置
- OpenCV3.0 Examples学习笔记(5)-distrans.cpp