使用isinstance()函数判断一个变量是不是字符串,python中isinstance函数的用法

  使用isinstance()函数判断一个变量是不是字符串,python中isinstance函数的用法

  我们也讲了很多函数判断,有些是针对类型的,有些是判断条件。今天主要讲阶级判断。很多朋友在做类判断的时候分不清type和isinstance的区别。虽然都可以用来判断,但是判断类型条件有一定的区别。接下来,小编就给大家讲讲我们在python中选择isinstance判断类的原因。

  Isinstance语法

  isinstance(object,classinfo)

  isinstance

  函数描述:当我们定义一个类时,我们实际上定义了一个数据类型。我们定义的数据类型和Python自己的数据类型没什么区别,比如str,list,dict。

  isinstance()和type()之间的区别:

  当我们定义一个类时,我们实际上定义了一个数据类型。我们定义的数据类型和Python自己的数据类型没什么区别,比如str,list,dict。

  不管继承与否,Type()都不会将子类视为父类类型。

  Isinstance()会把子类当作父类类型,并考虑继承关系。

  如果要判断两个类型是否相同,建议使用isinstance()。

  类型是由isinstance而不是Type来判断的。

  Type()不认为子类是父类类型。Isinstance()将子类视为父类类型。

  classFoo(object):

  及格

  classBar(Foo):

  及格

  print(type(Foo())==Foo)

  print(type(Bar())==Foo)

  print(isinstance(Foo(),Foo))

  print(isinstance(Bar(),Foo))

  #输出3360

  真实的

  错误的

  真实的

  真实的

  以上是python通过isinstance判断类的原因,因为isinstance需要使用继承,这是不能通过类型来考虑的,所以下次使用的时候一定要牢记。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: