#isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type()。
#返回值:如果对象的类型与参数二的类型相同则返回True,否则返回False
使用isinstance函数的实例:
a=2
print(isinstance(a,int)) # returns True
print(isinstance(a,str)) # returns False
print(isinstance(a,(str,int,list))) # returns True
拓展:isinstance()与type()的区别:
class A:
pass
class B(A):
pass
print(isinstance(A(), A)) # returns True
print(type(A()) == A) # returns True
print(isinstance(B(), A)) # returns True
print(type(B()) == A) # returns False
备注:
对于基本类型来说 classinfo 可以是:
int,float,bool,complex,str(字符串),list,dict(字典),set,tuple
要注意的是,classinfo 的字符串是 str 而不是 string,字典也是简写 dict。
示例如下:
arg=123
print(isinstance(arg,int)) # returns True
print(isinstance(arg,str)) # returns True
print(isinstance(arg,string)) # NameError: name 'string' is not defined