PHP前端开发

Python 异常处理技巧大公开,助你成为编程高手

百变鹏仔 2天前 #Python
文章标签 大公开
  1. try...except...finally

    这是 python 中最常用的异常处理结构,用于捕获异常并执行相应的处理逻辑。try 块包含要执行的代码,except 块包含捕获异常后的处理逻辑,finally 块包含无论是否发生异常都会执行的代码。例如:

try:# 执行代码except Exception as e:# 捕获异常并处理finally:# 无论是否发生异常都会执行的代码
  1. raise

    raise 语句用于抛出异常,可以指定要抛出的异常类型和异常信息。例如:

    立即学习“Python免费学习笔记(深入)”;

raise ValueError("无效的参数值")
  1. assert

    assert 语句用于检查某个条件是否成立,如果不成立则抛出 AssertionError 异常。例如:

assert x > 0, "x must be greater than 0"
  1. 自定义异常

    你可以创建自己的异常类,继承自 Exception 类。例如:

class MyError(Exception):passraise MyError("我的错误")
  1. 使用 logging 模块记录异常

    logging 模块可以用来记录异常信息。例如:

import loggingtry:# 执行代码except Exception as e:logging.error("发生异常", exc_info=True)
  1. 使用上下文管理器处理异常

    上下文管理器是一种用来简化异常处理的机制。例如:

with open("file.txt", "r") as f:# 执行代码

如果在 with 块中发生异常,则会自动关闭文件 f。

  1. 使用异常来控制程序流程

    异常也可以用来控制程序流程。例如,你可以使用异常来实现循环或分支。例如:

while True:try:# 执行代码except KeyboardInterrupt:break
  1. 使用异常来进行单元测试

    异常也可以用来进行单元测试。例如,你可以使用异常来检查函数是否抛出了正确的异常。例如:

import unittestclass MyTestCase(unittest.TestCase):def test_my_function(self):with self.assertRaises(ValueError):my_function(-1)

上述技巧可以帮助你更好地处理异常,提高代码的健壮性。