码迷,mamicode.com
首页 > 其他好文 > 详细

issubclass ,isinstance,反射

时间:2018-08-24 00:39:14      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:obj   数据类型   子类   返回   参数   tle   nbsp   table   有一个   

isinstance是Python中的一个内建函数
语法:
isinstance(object, classinfo)
 
如果参数object是classinfo的实例,或者object是classinfo类的子类的一个实例, 返回True。如果object不是一个给定类型的的对象, 则返回结果总是False。
如果classinfo不表示一个类(类型对象), 那么它要么是一个类的元组, 或者递归地包含这样的(由数据类型构成的)元组.其他的序列类型是不被允许的。
如果classinfo不是一种数据类型或者由数据类型构成的元组,将引发一个TypeError异常。
 
举例:
>>> isinstance(1, int)
True
>>> isinstance(1.0, float)
True
 
>>>isinstance(a,dict)  判断对象a是否为字典,如果为真,会打印True,如为假,打印False。
 
 

 

反射------------------------------------
在Python中反射的表现形式是:
通过字符串的形式操作对象相关的属性
在Python中通过四个函数实现反射:

函数名意义
hasattr(obj,name) 判断object中有没有一个name字符串对应的方法或属性
getattr(obj,name, default) 检查obj.__dict__中有没有name这个键值,有则不做任何处理,没有则报错
setattr(obj,name,value) 等价于obj.name=value
delattr(obj,name) 等价于del obj.name

issubclass ,isinstance,反射

标签:obj   数据类型   子类   返回   参数   tle   nbsp   table   有一个   

原文地址:https://www.cnblogs.com/fushaunglin/p/9527189.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
分享档案
周排行
mamicode.com排行更多图片
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!