#!usr/bin/env python3 # -*- coding: utf-8 -*- '继承和多态' __author__ = 'HZF' class Biology(object): def __init__(self,name,age=-1): self.__name = name def setName(self,name): self.__name = name def getName(self): return self.__name def setAge(self,age): self.__age = age def getAge(self): return self.__age def getClassName(self): return self.__class__.__name__ def action(self): print('%s %s is doing...' % (self.getClassName(),self.getName())) class Animal(Biology): def __init__(self,name,age=-1): Biology.__init__(self,name,age) def action(self): print('%s %s is running...' % (self.getClassName(),self.getName())) class Dog(Animal): def __init__(self,name,age=-1): Animal.__init__(self,name,age) class Cat(Animal): def __init__(self,name,age=-1): Animal.__init__(self,name,age) class Plant(Biology): def __init__(self,name,age=-1): Biology.__init__(self,name,age) def action(self): print('%s %s is growing...' % (self.getClassName(),self.getName())) class Fruit(Plant): def __init__(self,name,age=-1): Plant.__init__(self,name,age) def action(biology,times=1): if 'action' in dir(biology): for i in range(times): biology.action() else: print('%s %s can\'t doing any action' % (biology.getClassName(),biology.getName())) d = Dog('Wang') action(d,5) c = Cat('Miao') action(c,3) apple = Fruit('Apple') action(apple) apple.action()
比如获取class类名就用了我很长时间,在这里学习一个模块,还需要自己去拓展这个模块,最直接的就是要用到哪个功能。
错了,前面应该是
#!/usr/bin/env python3
Sign in to make a reply
久疤_796
比如获取class类名就用了我很长时间,在这里学习一个模块,还需要自己去拓展这个模块,最直接的就是要用到哪个功能。