目录
前言
isinstance相信大家都已经很熟悉了,对于他的用法和一些基本的操作,我们再做一个介绍。
但是我今天最想和大家将的其实是isinstance(object, classinfo) 中的classinfo都有哪些类型,int、str、dict、bool、list等这些基本类型都是一些最基本的,本文将告诉大家一些常用的classinfo,以及isinstance它的内部到底是怎样一个判断机制。
一、isinstance的基本使用
1、语法
isinstance(object, classinfo)
- object -- 实例对象。
- classinfo -- 可以是直接或间接类名、基本类型或者由它们组成的元组。
注意到lclassinfo这个参数的描述,可以是直接或间接类名,这个其实是因为isinstance的判断机制决定的,后面回过头来看你就明白了。
返回值:如果对象的类型与参数二的类型(classinfo)相同则返回 True,否则返回 False。。
2、基本用法
>>>a = 2
>>> isinstance (a,int)
True
>>> isinstance (a,str)
False
>>> isinstance (a,(str,int,list)) # 是元组中的一个返回 True
True
isinstance() 与 type() 区别:
-
type() 不会认为子类是一种父类类型,不考虑继承关系。
-
isinstance() 会认为子类是一种父类类型,考虑继