|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 wangyinghan 于 2018-4-10 09:42 编辑
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):
self.hungry = True
def eat(self):
if self.hungry:
print("我天天都有的吃")
self.hungry = False
else:
print("我吃饱了,吃不下去了!")
报错类型是语法错误。在class Goldfish(Fish):这里。
本帖最后由 shigure_takimi 于 2018-4-10 09:57 编辑
- # 目前看出两个问题:
- # 1. "我的位置是 :"和self.x之间少个逗号
- # 2. Shark继承Fish,需要super().__init__(),否则无法调用Fish的move()方法
- 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__() # super
- self.hungry = True
- def eat(self):
- if self.hungry:
- print("我天天都有的吃")
- self.hungry = False
- else:
- print("我吃饱了,吃不下去了!")
- a = Fish()
- a.move()
- b = Shark()
- b.move()
- b.eat()
- b.eat()
复制代码
|
|