Python isinstance() 函数用法
2023-09-17 22:28:12
isinstance()
方法检查对象是指定类的实例还是其任何子类的实例。
语法:
isinstance(object, classinfo)
参数:
- 对象:要检查的对象。
- classinfo:类名或类名元组。
返回值:
如果对象是指定类信息的实例,则返回 True,否则返回 False。
在下面的示例中,isinstance()
方法检查内置类实例。
mystr = 'Hello World'
num = 100
flt = 10.2
print(isinstance(mystr, str)) # True
print(isinstance(mystr, int)) # False
print(isinstance(num, int)) # True
print(isinstance(num, str)) # False
print(isinstance(flt, float)) # True
print(isinstance(flt, int)) # False
输出:
True
Flase
True
False
True
Flase
下面的示例检查用户定义类的实例。
class student:
name = 'Elon'
std = student()
print(isinstance(std, student))
print(isinstance(std, (student, list, str))) # tuple with class names
print(isinstance(std, list))
输出:
True
True
False
在上面的例子中,isinstance(std, (student, list, str))
指定了一个包含三个类的元组,student
、list
和 'str'。它返回 True,因为指定的实例是元组中的类之一。
下面显示了isinstance()
方法与本机数据类型的工作。
cities = ['Mumbai','Chicago','New York']
print(isinstance(cities,list))
print(isinstance(cities,(tuple, set)))
print(isinstance(cities,tuple))
输出:
True
False
False