在Python中,isinstance()函数用于检查一个对象是否是一个已知的类型(class type)或者该类型的子类。如果是,则返回True,否则返回False。这个函数通常用于类型检查和异常处理。
当使用isinstance()函数进行类型检查时,如果传入的参数不是预期的类型,可能会引发异常。为了避免这种情况,可以使用try-except语句来捕获异常并进行相应的处理。
下面是一个简单的例子,展示了如何使用isinstance()函数进行异常处理:
def process_data(data): try: if isinstance(data, list): # 对列表类型的数据进行处理 print("Processing a list:", data) elif isinstance(data, dict): # 对字典类型的数据进行处理 print("Processing a dictionary:", data) else: raise TypeError("Unsupported data type") except TypeError as e: print("Error:", e)# 测试数据data1 = [1, 2, 3]data2 = {"key": "value"}data3 = "unsupported data type"# 处理数据process_data(data1)process_data(data2)process_data(data3)在这个例子中,我们定义了一个名为process_data的函数,该函数接受一个参数data。我们使用isinstance()函数检查data的类型,并根据类型进行相应的处理。如果data的类型不是预期的类型(即不是列表或字典),我们抛出一个TypeError异常。然后,我们使用try-except语句捕获异常并打印错误信息。


