python中的异常处理(try,except,else, finally)

简介: python中的异常处理(try,except,else, finally)

python中的异常处理(try,except)

简介

异常处理

捕捉异常可以使用try/except语句。

try/except语句用来检测try语句块中的错误,从而让except语句捕获异常信息并处理。

如果你不想在异常发生时结束你的程序,只需在try里捕获它。

语法:

以下为简单的try…except…else的语法:

代码演示

了解异常

# 异常演示
f = open("lihua.txt", 'r')  

演示效果

异常的捕获方式

  • 基本语法演示
try:
    可能发生错误的代码
except:
    如果出现异常执行的代码

代码演示

try:
    f = open('lihua.txt', 'r')
except:
    f = open('lihua.txt', 'w')

运行结果

可以看出来当发生错误的时候,运行了except中的内容,然后创建了一个新的txt。

  • 捕获指定异常

演示代码

try:
    print(name)
except NameError as e:
    print('name变量名称未定义错误')

注意事项

① 如果尝试执行的代码的异常类型和要捕获的异常类型不一致,则无法捕获异常。

② 一般try下方只放一行尝试执行的代码。

  • 捕获多个异常

演示代码

try:
    print(1/0)
except (NameError, ZeroDivisionError):
    print('ZeroDivision错误...')

运行结果

在这个结果中,我们可以看出来,这个除以0的错误被捕获了。

  • 捕获异常并输出描述信息

基本语法

try:
    print(num)
except (NameError, ZeroDivisionError) as e:
    print(e)

运行结果

这里打印出来了,错误的信息,但是没有报错,错误信息就是num没有被定义。

  • 捕获所有异常
    基本语法
try:
    print(name)
except Exception as e:
    print(e)

运行结果

Exception可以捕获所有的异常。1

  • 异常else
    else表示的是如果没有异常要执行的代码。
try:
    print(1)
except Exception as e:
    print(e)
else:
    print('我是else,是没有异常的时候执行的代码')

运行结果

可以看出来,else里面是运行没有异常的时候的结果。

  • 异常的finally
    finally表示的是无论是否异常都要执行的代码,例如关闭文件。
    演示代码
try:
    f = open('test.txt', 'r')
except Exception as e:
    f = open('test.txt', 'w')
else:
    print('没有异常,真开心')
finally:
    f.close()

运行结果

这里可以看出来,创建了一个新的文本文件,然后最后也把这个给关闭了。

相关文章
|
3月前
|
安全 Linux 网络安全
Kali 渗透测试:基于结构化异常处理的渗透-使用Python编写渗透模块(一)
Kali 渗透测试:基于结构化异常处理的渗透-使用Python编写渗透模块(一)
88 2
|
3月前
|
Python Windows 网络安全
Kali 渗透测试:基于结构化异常处理的渗透-使用Python编写渗透模块(二)
Kali 渗透测试:基于结构化异常处理的渗透-使用Python编写渗透模块(二)
101 2
|
4月前
|
Python
Python编程中的异常处理:理解与实践
【9月更文挑战第14天】在编码的世界里,错误是不可避免的。它们就像路上的绊脚石,让我们的程序跌跌撞撞。但是,如果我们能够预见并优雅地处理这些错误,我们的程序就能像芭蕾舞者一样,即使在跌倒的边缘,也能轻盈地起舞。本文将带你深入了解Python中的异常处理机制,让你的代码在面对意外时,依然能保持优雅和从容。
166 73
|
2月前
|
UED 开发者 Python
Python中的异常处理机制
Python中的异常处理机制
49 2
|
3月前
|
安全 Java 程序员
Python 异常处理!
本文详细介绍了Python中的异常处理,包括try、except和finally语句的使用方法。文章区分了语法错误与异常,并列举了Python中常见的异常类型,如`SyntaxError`、`TypeError`等。通过具体示例展示了如何使用try-except块捕获和处理异常,以及如何结合else和finally子句增强代码的健壮性和可读性。此外,还介绍了如何使用raise语句主动抛出异常。通过合理的异常处理,可以提高程序的可靠性与调试效率,但也可能带来性能开销和代码复杂度的增加。
53 4
|
3月前
|
IDE 开发工具 开发者
Python中的异常处理与调试技巧
【9月更文挑战第32天】在软件开发中,错误和异常是难以避免的。了解如何有效处理这些情况对于编写健壮、可靠的代码至关重要。本文将深入探讨Python中的异常处理机制,介绍如何使用try-except语句捕捉异常,以及如何利用Python的调试工具来诊断问题。通过实际示例,我们将展示如何优雅地处理异常并提高代码质量。
|
4月前
|
对象存储 索引 Python
30天拿下Python之异常处理
30天拿下Python之异常处理
41 3
|
3月前
|
安全 数据库连接 开发者
深度解析Python上下文管理器:优雅资源管理与异常处理
深度解析Python上下文管理器:优雅资源管理与异常处理
50 0
|
5月前
|
Python
Python 中的 try 和 except 块
【8月更文挑战第29天】
84 6
|
5月前
|
PHP 开发者 UED
PHP中的异常处理:从基础到高级探索Python中的列表推导式:简洁而强大的工具
【8月更文挑战第30天】在PHP编程的世界中,异常处理是确保代码健壮性和可靠性的关键机制。本文将引导您了解PHP异常处理的基本概念,并通过实际示例展示如何有效地捕获和处理异常。我们将一起探索try-catch结构、自定义异常类以及高级异常处理技术,让您的PHP代码更加稳固和易于维护。