在Python中,你可以使用`try-except`语句来捕获和处理异常。为了判断异常的类型,你需要在`except`子句中使用`isinstance()`函数。下面是一个基本的示例,展示了如何根据不同的异常类型进行判断和处理:
```python
try:
尝试执行的代码可能会引发异常
x = 10
print(x.length) 这里会引发 AttributeError,因为 x 没有 'length' 属性
except AttributeError as e:
print("AttributeError:", e)
except FileNotFoundError as e:
print("FileNotFoundError:", e)
except IndexError as e:
print("IndexError:", e)
except KeyError as e:
print("KeyError:", e)
except TypeError as e:
print("TypeError:", e)
except ValueError as e:
print("ValueError:", e)
except Exception as e:
print("An unexpected error occurred:", e)
在这个示例中,我们尝试访问一个整数对象的`length`属性,这会引发`AttributeError`。`except`子句中的`isinstance()`函数用于检查捕获的异常是否是预期的类型。如果异常类型与`except`子句中指定的类型匹配,那么对应的代码块将被执行。
请注意,异常类型是内置类,可以在`builtins`模块中找到。常见的异常类型包括`Exception`、`TypeError`、`ValueError`、`AttributeError`等。