Python 变量类型判断 isinstance type

Python 变量类型判断 isinstance type

 

可以使用isinstance() 或 type() 两个内置函数,来判断变量引用的对象,是否属于某一类型。

isinstance()和type()的区别:

  • type() : 只返回对象的类型名称,不会认为子类是一种父类类型,不考虑继承关系。

  • isinstance() :会判断对象是否属于该类型或其子类,会认为子类是一种父类类型,考虑继承关系。

 

1. isinstance(obj_var, class_name)

  • 参数:

    • 参数1,变量名

    • 参数2,类名或多个类名组成的元组

  • 输出:

    • True,变量引用的对象,属于后面的某个类,或其子类

    • False,变量引用的对象,部署于后面的任意一个类或其子类

u = 1; isinstance(u,int)           #True
u = 1.0; isinstance(u,int)         #False
u = 1.0; isinstance(u,float)       #False
u = ''; isinstance(u,str)          #True
u = []; isinstance(u,list)         #True
u = (); isinstance(u,tuple)        #True
u = {}; isinstance(u,dict)         #True
u = set(); isinstance(u,set)       #True

 

2. if type(obj_var) == type("abc")

  • 原理:用type(var)返回的对象类型,与type('')已知对象类型比较,判断类型是否一致

u = 1; type(u) == type(2)          #True
u = 1.0; type(u) == type(2.0)      #False
u = 1.0; type(u) == type(2)        #False
u = ''; type(u) == type('a')       #True
u = []; type(u) == type([1,2,3])   #True
u = (); type(u) == type((1,2,3))   #True
u = {}; type(u) == type({a:1,b:2}) #True
u = set(); type(u) == type({1,2})  #True
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值