继承
import random as r
class Fish:
def __init__(self):
self.x = r.randint(0,10)
self.y = r.randint(0,10)
def move(self):
self.x -= 1
print('我的位置上: ',self.x,self.y)
class Goldfish(Fish):
pass
class Carp(Fish):
pass
class Salmon(Fish):
pass
class Shark(Fish):
def __init__(self):
super().__init__()#若不加, 则__init__被替换,Shark.move 无法调用
#Fish.__init__(self)
self.hungry = True
def eat(self):
if self.hungry:
print('吃货的梦想就是天天吃')
self.hungry = False
else:
print('吃不下了')
多重继承
组合
class Turtle:
def __init__(self,x):
self.num=x
class Fish:
def __init__(self,x):
self.num=x
class Pool:
def __init__(self,x,y):
self.turtle = Turtle(x)
self.fish = Fish(y)
def print_num(self):
print('水池里有乌龟 %d 只,鱼 %d 条'%(self.turtle.num,self.fish.num))