issubclass函数与isinstance 函数比较接近,isinstance 函数是判断一个实例对象与类的关系,issubclass函数判断类与类的关系。
并且isinstance 函数可以接受任何类型实例,但issubclass函数不行,会输出TypeError异常。
# File: builtin-issubclass-example-1.py
class A:
pass
class B:
pass
class C(A):
pass
class D(A, B):
pass
def dump(object):
print(object, "=>",)
if issubclass(object, A):
print("A",)
if issubclass(object, B):
print("B",)
if issubclass(object, C):
print("C",)
if issubclass(object, D):
print("D",)
print()
dump(A)
dump(B)
dump(C)
dump(D)
dump(0)
dump("string")
结果输出如下:
= RESTART: D:/work/csdn/python_Game1/example/builtin-issubclass-example-1.py =<class '__main__.A'> =>A<class '__main__.B'> =>B<class '__main__.C'> =>AC<class '__main__.D'> =>ABD0 =>Traceback (most recent call last): File "D:/work/csdn/python_Game1/example/builtin-issubclass-example-1.py", line 31, in <module> dump(0) File "D:/work/csdn/python_Game1/example/builtin-issubclass-example-1.py", line 17, in dump if issubclass(object, A):TypeError: issubclass() arg 1 must be a class>>>
Python游戏开发入门
http://edu.csdn.net/course/detail/5690
你也能动手修改C编译器
http://edu.csdn.net/course/detail/5582
纸牌游戏开发
http://edu.csdn.net/course/detail/5538
五子棋游戏开发
http://edu.csdn.net/course/detail/5487RPG游戏从入门到精通http://edu.csdn.net/course/detail/5246WiX安装工具的使用http://edu.csdn.net/course/detail/5207俄罗斯方块游戏开发http://edu.csdn.net/course/detail/5110boost库入门基础http://edu.csdn.net/course/detail/5029Arduino入门基础http://edu.csdn.net/course/detail/4931Unity5.x游戏基础入门http://edu.csdn.net/course/detail/4810TensorFlow API攻略http://edu.csdn.net/course/detail/4495TensorFlow入门基本教程http://edu.csdn.net/course/detail/4369C++标准模板库从入门到精通 http://edu.csdn.net/course/detail/3324跟老菜鸟学C++http://edu.csdn.net/course/detail/2901跟老菜鸟学pythonhttp://edu.csdn.net/course/detail/2592在VC2015里学会使用tinyxml库http://edu.csdn.net/course/detail/2590在Windows下SVN的版本管理与实战 http://edu.csdn.net/course/detail/2579Visual Studio 2015开发C++程序的基本使用 http://edu.csdn.net/course/detail/2570在VC2015里使用protobuf协议http://edu.csdn.net/course/detail/2582在VC2015里学会使用MySQL数据库http://edu.csdn.net/course/detail/2672