品易云推流 关闭
文章详情页
文章 > Python常见问题 > python怎么判断某一对象是否为字典

python怎么判断某一对象是否为字典

头像

silencement

2019-08-24 13:32:507668浏览 · 0收藏 · 0评论

我们经常需要在代码中确定某个实例是什么类型的。通过type函数可以返回具体的类型名称。另有一些场景下,只需要知道实例是否属于某一些类型之一。例如要遍历一个对象,要先判断该实例是否为元组、列表或字典等可迭代类型之一。通过isinstance函数可以达到此目的。

isinstance(object,classinfo)
这个函数的功能简单的说就是判断object实例是否是classinfo类型的,如果是则返回TRUE,否则返回FALSE。classinfo参数有三种情况
1.类型,可以是基本的内置数据类型或自定义的类型,例如:

isinstance(object,str)
isinstance(object,classA)

2.新式类型(new-style class),即type object,相关介绍参见:http://wiki.woodpecker.org.cn/moin/PyTypesAndObjects

调用方式同上。

3.元组,根据元组的元素类型,可以这样混搭

1)元素是class或type object的元组,例如

isinstance(obj,(list,tuple))

2)元素本身是元组,例如

isinstance(obj,((classA,classB),(classC,classD),(classE,classF)))

3)元素本身是元组和class或type object的组合;

isinstance(obj,((classA,classB),(classC,classD),(classE,classF),str))

另外,如果object是classinfo所代表的类型或其元组中的类型的子类,同样返回TRUE。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图