Python Exception 错误信息输出机理
来源:互联网 发布:纯软件语音室 编辑:程序博客网 时间:2024/06/04 00:34
当遇到一个如下的exception时,最后一行错误信息是从何而来的呢?
>>> 2 / 0Traceback (most recent call last): File "<stdin>", line 1, in <module>ZeroDivisionError: integer division or modulo by zero
其机理可用一句话描述:ExceptionObject.__class__.__name__ + ': ' + ExceptionObject.__str__()
。
默认情况下,Exception实例初始化时会将参数赋给属性args,实例方法__str__输出args。例如:
>>> try:... raise Exception("foo", "bar")... except Exception as e:... print e.args... print e.__str__()... raise... ('foo', 'bar')('foo', 'bar')Traceback (most recent call last): File "<stdin>", line 2, in <module>Exception: ('foo', 'bar')
当然,我们可以定义自己的__init__
和__str__
。例如:
>>> class FooException(Exception):... def __init__(self, errno, message):... self._errno = errno... self._message = message... def __str__(self):... return repr(self._message)...>>> raise FooException(404, "Web Page not found")Traceback (most recent call last): File "<stdin>", line 1, in <module>__main__.FooException: 'Web Page not found'
参考资料:
1. Python Official Documents: Errors and Exceptions
0 0
- Python Exception 错误信息输出机理
- [Python]剖析类的机理
- php 不输出错误信息
- Linux Advance--输出错误信息
- PHP开启输出错误信息
- php输出所有错误信息
- struts2如何输出错误信息
- Python中如何输出完整的Exception Stack?
- Python Exception
- Python Exception
- python exception
- Python Exception
- python exception
- python exception
- Python exception
- JSP中统一错误信息输出
- popen函数及输出错误信息
- 如何抑制grep输出错误信息
- static静态
- java Map实现的cache manager,定时清除缓存起来的值
- Android性能优化——渲染、内存、电源优化
- Centos6.5上搭建LAMP并使用navicat工具连接数据库
- Djando安装配置
- Python Exception 错误信息输出机理
- 随便写写的java笔记10
- samba不允许一个用户使用一个以上用户名与一个服务器或共享资源的多重连接
- 编译goldfish2.6.9遇见的问题
- JNI Types and Data Structures
- 从mykernel分析linux任务调度
- 多态
- [51Nod 1224] 阶乘的幂的倍数
- Flex 实现动态加载图片