一个动物园有十个房间,里面有两种动物,老虎、羊。老虎的体重是200斤,羊体重100斤。游戏开始之前,在10个房间里面,随机
放入老虎和羊。游戏这的目标是要把羊和老虎喂的越重越好。
游戏开始后,系统随机给出房间号。游戏者开始必须弄清楚,每个房间是老虎还是羊,方法是敲房间门,里面的动物都会叫,老虎叫声‘wow!!!’,
羊叫声是‘mie’。动物每叫一次体重减5斤。喂老虎应该输入单词meet,喂羊应该输入单词grass。喂对了体重加10斤。喂错了。体重减少10斤
游戏者需要强记每个房间的动物是什么,以便不需要敲门就可以得知里面的动物是什么,从而该喂什么。这样不断循环。游戏2分钟结束后。看看你喂的动物总体重多少
class Tiger:#定义一个老虎类
#静态方法 这个类的所有实例化都是一样的
classname = '东北虎'
def __init__(self):#初始化方法,有个参数有初始固定值
self.weight = 200
def eat(self,food): #定义一个方法
if food == 'meat':
self.weight += 10
elif food == 'grass':
self.weight -= 10
else:
pass
def jiao(self): #定义一个属性
print("Wow~~~")
self.weight -= 5
class Sheep:
classname = '喜羊羊'
def __init__(self):
self.weight = 100
def eat(self,food):
if food == 'meat':
self.weight += 10
elif food == 'grass':
self.weight -= 10
else:
pass
def jiao(self):
print("mie~~~")
self.weight -= 5
class Room: #定义一个房间类,它有房号和动物两种参数
def __init__(self,num,animal):
self.num = num
self.animal = animal
from random import randint
room_list = [] #建一个列表用来存取每次循环获取到的房间号和动物组合
for i in range(1,11):
if randint(1,2) == 1: #随机判断
animal = Tiger() #实例化一个老虎
else :
animal = Sheep()#实例化一个羊
rm = Room(i,animal) #实例化一个房间,传入房间类需要的参数
room_list.append(rm) #把循环每次得到的房间号和动物组合存到列表,因为rm的值每次循环后会清掉
import time
startTime = time.time()#获取当前时间并存入startTime
while time.time() - startTime < 15:#15秒为测试时间,验证程序是否编写正确
room_num = randint(0在这里插入代码片,9)#随机生成是个房间
fangjian = room_list[room_num]#随机使用一个房间
a = input(f'当前访问的是{room_num + 1}号房间,请问是否需要敲门(y/n)')
if a == 'y':
fangjian.animal.jiao() #面向对象 房间类的实例化调用动物的属性
# print(f'{room_num + 1}号房间的动物是{fangjian.animal.classname},当前体重{fangjian.animal.weight}')
else:
pass
b = input(f'请问需要喂食吗?(y/n)')
if b == 'y':
c = input(f'请选择需要喂的食物种类:(meat/grass)')
if c == 'meat' or c == 'grass':
fangjian.animal.eat(c)
else:
print("您输入的食物不对!")
else:
pass
else:
for i in range(10):
print(f'{i + 1}号房间的动物是{room_list[i].animal.classname},当前体重{room_list[i].animal.weight}')