Python中错误与异常如何处理
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要介绍了Python中错误与异常如何处理,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。前言语法错误SyntaxError 类
千家信息网最后更新 2026年11月02日Python中错误与异常如何处理
这篇文章主要介绍了Python中错误与异常如何处理,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
前言
语法错误
SyntaxError 类表示语法错误,当解释器发现代码无法通过语法检查时会触发的错误。语法错误是无法用 try...except...捕获的。
>>> print: File "", line 1 print: ^SyntaxError: invalid syntax
异常
Python使用被称为异常的特殊对象来管理程序执行期间发生的错误,每当发生让Python不知所措的错误时,它都会创建一个异常对象,如果编写了处理异常的代码,程序将继续运行;如果未对异常做处理,程序将进行停止,并显示一个traceback,其中包含有关异常的报告。
异常处理
print(5/0)
运行结果:
Traceback (most recent call last): File "文件与异常/文件与异常.py", line 228, inprint(5/0)ZeroDivisionError: division by zero
异常处理使用以下格式:
try-except代码块
try-except代码块try: print(5/0)except ZeroDivisionError: print("can't divide by zero")#结果 print("can't divide by zero")抛出异常抛出异常
使用 raise 语句抛出一个指定的异常。
raise 唯一的一个参数指定了要被抛出的异常。它必须是一个异常的实例或者是异常的类(也就是 Exception 的子类)。
如果你只想知道这是否抛出了一个异常,并不想去处理它,那么一个简单的 raise 语句就可以再次把它抛出。
自定义异常
可以通过创建一个新的异常类来拥有自己的异常。异常类继承自 Exception 类,可以直接继承,或者间接继承。
当创建一个模块有可能抛出多种不同的异常时,一种通常的做法是为这个包建立一个基础异常类,然后基于这个基础类为不同的错误情况创建不同的子类。
大多数的异常的名字都以"Error"结尾,就跟标准的异常命名一样。
实例
import sysclass Error(Exception): """Base class for exceptions in this module.""" pass# 自定义异常class InputError(Error): """Exception raised for errors in the input. Attributes: expression -- input expression in which the error occurred message -- explanation of the error """ def __init__(self, expression, message): self.expression = expression self.message = messagetry: print('code start running...') raise InputError('input()', 'input error') # ValueError int('a') # TypeError s = 1 + 'a' dit = {'name': 'john'} # KeyError print(dit['1'])except InputError as ex: print("InputError:", ex.message)except TypeError as ex: print('TypeError:', ex.args) passexcept (KeyError, IndexError) as ex: """支持同时处理多个异常, 用括号放到元组里""" print(sys.exc_info())except: """捕获其他未指定的异常""" print("Unexpected error:", sys.exc_info()[0]) # raise 用于抛出异常 raise RuntimeError('RuntimeError')else: """当无任何异常时, 会执行 else 子句""" print('"else" 子句...')finally: """无论有无异常, 均会执行 finally""" print('finally, ending')感谢你能够认真阅读完这篇文章,希望小编分享的"Python中错误与异常如何处理"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
错误
处理
代码
篇文章
语法
不同
程序
同时
基础
子句
子类
实例
对象
文件
结果
语句
支持
运行
特殊
不知所措
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
科技互联网
国智互联网科技
科技与互联网
科技互联网政务服务
上海互联网科技有限公司
上海挚品互联网科技
互联网 卓越科技
美国互联网黑科技
中国最先进互联网科技公司
佳云科技和互联网广告
全球顶尖互联网科技公司
电子科技大学互联网创业大赛
高科技互联网发展前景如何
长沙茂晟互联网科技有限公司
科技大学互联网
21世纪互联网科技成就
信承诺互联网科技有限公司
张家口科技产业互联网平台
互联网科技和医药行业
青岛易易互联网科技
互联网科技公司
互联网科技的英文
衡水科技产业互联网平台
互联网科技产品
宁波青枫互联网科技有限公司
福建科技产业互联网发展
互联网金融科技展
三亚科技创新互联网基地
山东蛋芒互联网科技有限公司
互联网高科技绘画