📜  如何在Python中的一行中捕获多个异常?

📅  最后修改于: 2022-05-13 01:54:36.108000             🧑  作者: Mango

如何在Python中的一行中捕获多个异常?

先决条件: Python中的异常处理

在某些情况下,我们需要在一行中包含异常。在本文中,我们将了解如何在一行中包含多个异常。我们使用这种方法使代码更具可读性和更简单。此外,它将帮助我们遵循 DRY(不重复代码)代码方法

通常为了处理异常,我们使用 try/Except 方法来获取异常。以前我们使用它们使我们的代码复杂并且不遵循 DRY 编码方法

Python3
a = 1
strs = "hello"
 
def func(a):
    res = a + strs
    print(res)
 
try:
    func(a)
except(TypeError)as e:
    print(e)
except(UnboundLocalError) as e:
    print(e)


Python3
a = 1
strs = "hello"
 
def func(a):
    res: a + strs  # unboundlocalerror
    print(res)
 
try:
    func(a)
except(TypeError, UnboundLocalError) as e:
    print(e)


输出:

Typeerror

我们可以通过将元组传递给我们的例外来编写这种格式。在这里,我们可以只编写一次打印语句或任何其他操作,并在一行中声明异常

Python3

a = 1
strs = "hello"
 
def func(a):
    res: a + strs  # unboundlocalerror
    print(res)
 
try:
    func(a)
except(TypeError, UnboundLocalError) as e:
    print(e)

输出:

local variable 'res' referenced before assignment