37课后作业的小游戏编程
本帖最后由 kasim01 于 2018-1-21 18:49 编辑自己重新写了一下,感觉和标准答案还是不太一样的。。。
**** Hidden Message *****
为什么还隐藏代码呢 大家都好厉害,作品区是一个交流学习的好地方,向你们学习{:5_105:} {:5_91:} 观摩
大家都好厉害,作品区是一个交流学习的好地方,向你们学习 考虑考虑看看 666 77777777777777666666666666 看看 。666 132 11 学习 瞅瞅 import random
class tortoise:
def __init__(self):
self.HP = 100
self.x = random.randint(0,10)
self.y = random.randint(0,10)
self.a = random.randint(-2,2)
self.b = random.randint(-2,2)
def move(self):
self.a = random.randint(-2,2)
self.b = random.randint(-2,2)
if abs(self.a) + abs(self.b) <= 2 and 0 <= self.a + self.x <= 10 and 0 <= self.b + self.y <= 10 and self.HP > 0:
self.x += self.a
self.y += self.b
self.HP -= 1
return (self.x,self.y)
def eat(self):
self.HP += 10
if self.HP > 100:
self.HP = 100
class fish:
def __init__(self):
self.x = random.randint(0,10)
self.y = random.randint(0,10)
self.a = random.randint(-2,2)
self.b = random.randint(-2,2)
def move(self):
self.a = random.randint(-2,2)
self.b = random.randint(-2,2)
if abs(self.a) + abs(self.b) == 1 and 0 <= self.a + self.x <= 10 and 0 <= self.b + self.y <= 10:
self.x += self.a
self.y += self.b
return (self.x,self.y)
t = tortoise()
flist = []
for i in range(10):
f = fish()
flist.append(f)
while 1:
if not t.HP:
print("乌龟血槽空了")
break
pos = t.move()
for each in flist:
if each.move() == pos:
t.eat()
deadf = flist.pop()
print(deadf,"被吃掉了")
if flist == []:
print("鱼被吃光了")
break 观摩学习 好厉害 好厉害 好厉害