python3中,isinstance() 函数

82 阅读1分钟

#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 可以是:

intfloatboolcomplexstr(字符串),listdict(字典),settuple

要注意的是,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