在 Python 中,exec()
函数用于执行存储在字符串或对象中的 Python 代码。由于 exec()
函数是在其执行的代码中运行,因此很难直接捕获异常。但是,可以通过捕获 exec()
函数外部的异常来实现对异常的处理。
以下是一个示例,展示了如何使用 try-except
语句捕获 exec()
函数中发生的异常:
code = """
def divide(a, b):
return a / b
result = divide(10, 0)
"""
try:
exec(code)
except Exception as e:
print(f"发生异常: {e}")
在这个示例中,我们尝试执行包含除法操作的代码字符串。由于除数为零,将引发 ZeroDivisionError
异常。通过使用 try-except
语句,我们可以捕获此异常并打印相应的错误消息。
请注意,exec()
函数具有安全风险,因为它可以执行任意代码。在实际项目中,谨慎使用 exec()
函数,并确保仅执行可信来源的代码。