Python中常见的异常语句

本文详细介绍了Python编程过程中常见的五种异常类型,包括NameError、ZeroDivisionError、SyntaxError、IndexError及KeyError,并通过实例展示了每种异常发生的场景及其解决办法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.NameError

当程序尝试访问一个未声明的变量或者函数时,会引发NameError异常。
变量名输错时,在调用的时候会引发NameError异常。

score=80
print(socre)#变量名称写错,

输出结果:

#变量名称写错,使用时发现变量未被定义,程序抛出NameError异常。
NameError: name 'socre' is not defined

2.ZeroDivisionError

计算过程中,当有除数为0的情况发生时,会引发ZeroDivisionError异常。

3.SyntaxError

当程序出现语法错误时,会引发SyntaxError异常。

str='Hello Python'
for welcome in str#未加冒号
    print(welcome)

输出结果:

 for welcome in str
                     ^
SyntaxError: invalid syntax

4.IndexError

当时用序列中不存在的索引时,会引发IndexError异常。

list=['a','b','c']
print(list[3])

输出结果:

#列表的索引值超出了列表的范围,从而导致异常
IndexError: list index out of range

5.KeyError

当使用字典中不存在的键时,会引发KeyError异常。

dict={'name':'zhangsan'}
print(dict['age'])

输出结果:

#当出现字典中没有的键时,会抛出KeyError异常
KeyError: 'age'
Python 中,异常处理是一种强大的错误管理机制,用于捕获并处理程序运行时可能出现的问题。当程序遇到错误(如除以零、文件不存在等)时,Python 会引发一个异常。使用 `try-except` 语句来捕获和处理这些异常常见的做法。 以下是 Python 中抛出异常的基本结构: ```python try: # 可能会抛出异常的代码块 code_that_may_raise_an_exception except ExceptionType: # 当发生指定类型的异常时执行的代码 exception_handling_code ``` - `try` 块包含可能会引发异常的代码。 - `ExceptionType` 是要捕获的具体异常类型,可以是内置异常(如 `ZeroDivisionError`、`FileNotFoundError`),也可以是你自定义的异常类。 - 如果 `try` 块中的代码引发了 `ExceptionType` 或其子类的异常Python 将立即跳转到相应的 `except` 块执行代码。 - 如果没有匹配的异常处理,异常将继续向上冒泡,直到被某个 `except` 块捕获或程序终止。 除了具体的异常类型外,还有几种特殊的异常处理情况: - `except Exception`: 用于捕获所有类型的异常,但通常不推荐,因为它可能会隐藏实际的错误信息。 - `except`: 不指定类型,会捕获所有未被其他 `except` 子句处理的异常- `finally`: 无论是否发生异常,都会执行的代码块,常用于关闭文件、释放资源等。 相关问题--: 1. Python 中有哪些内置的异常类型? 2. 如何自定义异常? 3. 为什么在处理异常时通常建议只捕获特定类型的异常
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值