在 Python 中打印异常
在 Python 中,异常是错误。Python 中存在许多错误或异常,例如 TypeError
、SyntaxError
、KeyError
和 AttributeError
等。我们在 Python 中使用 try-except-finally
来处理这些异常,因为没有这些块,这些异常将终止程序的执行。Python 中的 try-except-finally
块可用于打印这些异常,而无需停止程序的执行。
考虑以下代码片段。
dictionary = {
"hello": "world",
}
number = 25
try:
number = number + dictionary["hello"]
print(number)
except Exception as e:
print(repr(e))
输出:
TypeError("unsupported operand type(s) for +: 'int' and 'str'",)
在上面的代码中,我们首先用字典 hello
作为指向字符串值 world
的键和变量 number
的字典进行初始化。然后在 try
块中,我们尝试访问存储在字典
中的字符串值,并将其添加到 number
变量中。
该声明在实际上和概念上都是错误的,因为不可能在整数
中添加字符串
。因此,except
块会捕获此错误,并在控制台中输出与此异常关联的 Exception
对象。
Python 有一个内置模块 traceback
,用于打印和格式化异常。而且,它很容易在控制台中打印整个异常。
在 Python 中,你可以使用 raise
关键字手动引发异常。在以下代码段中,我们将使用 raise
关键字在 try
块内引发异常。
import traceback
try:
raise KeyError
except Exception as e:
traceback.print_exc()
输出:
Traceback (most recent call last):
File ".\main.py", line 4, in <module>
raise KeyError
KeyError
在上面的代码中,我们引发了一个 KeyError
异常,并使用了 traceback
模块中的 print_exc()
函数来打印该异常。该函数打印有关异常的信息,是 traceback.print_exception(*sys.ex_info(), limit, file, chain)
的简写。
要了解有关 print_exception()
函数的更多信息,请参考官方文档
相关文章
Pandas DataFrame DataFrame.shift() 函数
发布时间:2024/04/24 浏览次数:133 分类:Python
-
DataFrame.shift() 函数是将 DataFrame 的索引按指定的周期数进行移位。
Python pandas.pivot_table() 函数
发布时间:2024/04/24 浏览次数:82 分类:Python
-
Python Pandas pivot_table()函数通过对数据进行汇总,避免了数据的重复。
Pandas read_csv()函数
发布时间:2024/04/24 浏览次数:254 分类:Python
-
Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。
Pandas 多列合并
发布时间:2024/04/24 浏览次数:628 分类:Python
-
本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。
Pandas loc vs iloc
发布时间:2024/04/24 浏览次数:837 分类:Python
-
本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。
在 Python 中将 Pandas 系列的日期时间转换为字符串
发布时间:2024/04/24 浏览次数:894 分类:Python
-
了解如何在 Python 中将 Pandas 系列日期时间转换为字符串