isinstance()
函数检查对象(第一个参数)是否是 classinfo 类(第二个参数)的一个实例或子类。
示例
numbers = [1, 2, 3, 4, 2, 5]
# check if numbers is instance of list
result = isinstance(numbers, list)
print(result)
# Output: True
isinstance() 语法
isinstance()
的语法是
isinstance(object, classinfo)
isinstance() 参数
isinstance()
接受两个参数
isinstance 返回值
isinstance()
返回
- 如果 对象 是类或元组中任何元素的实例或子类,则返回
True
- 否则返回
False
如果 classinfo 不是类型或类型元组,则会引发 TypeError
异常。
示例 1:isinstance() 如何工作?
class Foo:
a = 5
fooInstance = Foo()
print(isinstance(fooInstance, Foo))
print(isinstance(fooInstance, (list, tuple)))
print(isinstance(fooInstance, (list, tuple, Foo)))
输出
True False True
示例 2:isinstance() 与原生类型的使用
numbers = [1, 2, 3]
result = isinstance(numbers, list)
print(numbers,'instance of list?', result)
result = isinstance(numbers, dict)
print(numbers,'instance of dict?', result)
result = isinstance(numbers, (dict, list))
print(numbers,'instance of dict or list?', result)
number = 5
result = isinstance(number, list)
print(number,'instance of list?', result)
result = isinstance(number, int)
print(number,'instance of int?', result)
输出
[1, 2, 3] instance of list? True [1, 2, 3] instance of dict? False [1, 2, 3] instance of dict or list? True 5 instance of list? False 5 instance of int? True
另请阅读