问题1:TypeError: Pool() takes no arguments
代码:
class Tortoise:
def _init_(self,x):
self.num = x
class Fish:
def _init_(self,y):
self.num = y
class Pool:
def _init_(self,x,y):
self.tortoise = Tortoise(x)
self.fish = Fish(y)
def print_num(self):
print("水池里共有乌龟%d只,小鱼%d只"%(self.tortoise.num,self.fish.num))
pool = Pool(1,10)
pool.print_num()
结果报错:TypeError: Pool() takes no arguments
原因:是python初始化时__init__(),是两个下划线
正确代码:
class Tortoise:
def __init__(self,x):
self.num = x
class Fish:
def __init__(self,y):
self.num = y
class Pool:
def __init__(self,x,y):
self.tortoise = Tortoise(x)
self.fish = Fish(y)
def print_num(self):
print("水池里共有乌龟%d只,小鱼%d只"%(self.tortoise.num,self.fish.num))
pool = Pool(1,10)
pool.print_num()