Discuss / Python / 还有很多东西要学啊。

还有很多东西要学啊。

Topic source

久疤_796

#1 Created at ... [Delete] [Delete and Lock User]
#!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类名就用了我很长时间,在这里学习一个模块,还需要自己去拓展这个模块,最直接的就是要用到哪个功能。

久疤_796

#2 Created at ... [Delete] [Delete and Lock User]

错了,前面应该是

#!/usr/bin/env python3

  • 1

Reply