is 和 isinstance的区别 and issubclass
定义一个子类和父类
class A:
pass
class B(A):
pass
is
print(type(b) is B)
# 结果: True print(type(b) is A)
# 结果: False
is 通过"type"可以判断两个类型是否相等, 只会判断绝对相等, 而不去关心父类是谁.
isinstance
print(isinstance(b, B))
#结果: True
print(isinstance(b, A))
#结果: True
isinstance 会对这个对象进行"刨祖坟"式的判断, 先判断本类, 在判断父类, 一直判断, 直到object
issubclass
class A:
pass
class B(A):
pass
class C(B):
pass print(issubclass(C, B))
# 结果: True print(issubclass(C, A))
# 结果: True
判断一个是是否是另外一个类的子类, 也是"刨祖坟"式的判断
is 和 isinstance的区别 and issubclass的更多相关文章
- python基础----isinstance(obj,cls)和issubclass(sub,super)、反射、__setattr__,__delattr__,__getattr__、二次加工标准类型(包装)
一.isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否ob ...
- 一 .isinstance(obj,cls)和issubclass(sub,super)
class Foo: pass class Bar(Foo): pass obj = Bar() isinstance(obj,cls)检查是否obj是否是类 cls 的对象 print(isinst ...
- instanceof和isInstance的区别
instanceof 是一个操作符(类似new, ==等) ( Object reference variable ) instanceof (class/interface type) if(a i ...
- type与isinstance使用区别
Python中,type与isinstance都可以用来判断变量的类型,但是type具有一定的适用性,用它来判断变量并不总是能够获取到正确的值. Python在定义变量的时候不用指明具体的的类型,解释 ...
- instanceof 和isinstance的区别
class A {} class B extends A {} class C extends A {} public class Test { public static void main(Str ...
- day25——私有成员、类方法、静态方法、属性、isinstance和issubclass的区别
day25 类的私有成员 当你遇到重要的数据,功能(只允许本类使用的一些方法,数据)设置成私有成员 python所有的私有成员都是纸老虎,形同虚设 类从加载时,只要遇到类中的私有成员,都会在私有成员前 ...
- day29 类中的内置函数方法 __str__ __repr__ __call__ isinstance() issubclass()
__str__()__repr__()__len__() str() 转字符串repr() 让字符原形毕露的方法len() 计算长度 内置的方法很多,但是并不是全部都在object中,比如len(), ...
- 面向对象之(非)绑定方法,反射,isinstance与issubclass
isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查obj是否是类 cls 的对象 class Foo(object): pa ...
- python基础之类的isinstance与issubclass、反射
一 isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的对象 class Foo: pass o ...
随机推荐
- JS的封装(JS插件的封装)
JS中类的概念类,实际上就是一个function,同时也是这个类的构造方法,new创建该类的实例,new出的对象有属性有方法.方法也是一种特殊的对象. 类的方法在构造方法中初始化实例的方法(就是在构造 ...
- SCI收录的期刊查询
SCI 收录的期刊查询(动态) 1.Science Citation Index (SCI)收录期刊查询地址:http://www.isinet.com/cgi-bin/jrnlst/jlopti ...
- 【Leetcode】【Easy】Merge Sorted Array
Given two sorted integer arrays A and B, merge B into A as one sorted array. Note:You may assume tha ...
- 【Spring实战】—— 1 入门讲解
这个系列是学习spring实战的总结,一方面总结书中所写的精髓,另一方面总结一下自己的感想. 基础部分讲解了spring最为熟知的几个功能:依赖注入/控制反转 和 面向切面编程. 这两个就不再多说了, ...
- June 03rd 2017 Week 22nd Saturday
Truth and roses have thorns about them. 真理和玫瑰,身边都有刺. Yesterday, I met with a young, beautiful profes ...
- 学习和运用scrum
作为长大的大三老腊肉,我们已经在长大生活了两年多,对于什么是长大人最想完善的校园需求.最想拥有的校园服务媒介也有了更加深切的体会. 于是,GoodJob小团队blingbling闪现啦!! GoodJ ...
- 20165322 2017-2018-2《Java程序设计》课程总结
20165322 2017-2018-2<Java程序设计>课程总结 每周作业链接汇总 预备作业1:我期望的师生关系 预备作业2:做中学learning by doing个人感想 预备作业 ...
- spring boot 三种入参
先来讲述下最简单的使用get请求用户信息的实现方式,代码如下,写好后直接在Application类点击右键有个RunAs,点击后会自动运行,运行成功后可以使用http发包工具进行测试,这里推荐使用ch ...
- Python Day 15 递归、匿名函数、内置函数
阅读目录 内容回顾 生成器的send方法 递归 匿名函数 内置函数 ##内容回顾 #1.带参装饰器 - 自定义 | wraps def wrap(info) def outer1(func): fro ...
- POJ 1830 开关问题 【01矩阵 高斯消元】
任意门:http://poj.org/problem?id=1830 开关问题 Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 1 ...