版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yysyangyangyangshan/article/details/84171124
Python中还可以检查类的继承的关系。
比如,如下两个类,PrimaryBaLinghouStudent继承了BaLinghouStudent。
class BaLinghouStudent:
name='学生'
school='学校'
def init(self,n,s):
self.name=n
self.school=s
def goSchool(self):
print('%s 去 %s 上学啦!' %(self.name,self.school) )
def doWork(self):
print('%s写生字' %self.name)
class PrimaryBaLinghouStudent(BaLinghouStudent):
def doWork(self):
print('%s造句' %self.name)
issubclass函数可以查看一个类是否是另一个类的子类,
print(issubclass(PrimaryBaLinghouStudent,BaLinghouStudent))
print(issubclass(BaLinghouStudent,PrimaryBaLinghouStudent))
输出
True
False
__bases__函数可以查看一个类的父类,
print(BaLinghouStudent.__bases__)
print(PrimaryBaLinghouStudent.__bases__)
输出
(<class 'object'>,)
(<class '__main__.BaLinghouStudent'>,)
isinstance是针对实例的,查看这个实例是否是一个类的对象。
baling = BaLinghouStudent()
priBaling = PrimaryBaLinghouStudent()
print(isinstance(baling,BaLinghouStudent))
print(isinstance(priBaling,BaLinghouStudent))
print(isinstance(baling,PrimaryBaLinghouStudent))
输出
True
True
False
工程文件下载:https://download.csdn.net/download/yysyangyangyangshan/10790181