面对对象

from random import  randint
from time import time
class Tige:   #定义老虎类
    zhonglei='老虎'  #静态属性
    def __init__(self,tizhong=100): #属性方法
        self.tizhong2=tizhong          #tizhong2是见减无斤方法
    def roar(self):                          #实例方法,调用roar等于打印我是老虎 体重-5斤
        print("wow我是老虎体重,减5斤")
        self.tizhong2 -= 5
    def food(self,feed):            #实例方法  喂食   如果喂的肉 那么体重+10斤 打印喂食正确
        if feed =='':
            self.tizhong2 += 10
            print('喂食正确')
        else:
            self.tizhong2 -= 10
            print('喂食错误')

class Sheep:   #定义羊类
    zhonglei='羊虎'  #静态属性
    def __init__(self,tizhong=100): #初始化方法
        self.tizhong2=tizhong
    def roar(self):
        print("wow我是羊,体重减5斤")
        self.tizhong2 -= 5
    def food(self,feed):
        if feed =='':
            self.tizhong2 += 10
            print('喂食正确')
        else:
            self.tizhong2 -= 10
            print('喂食错误')
class Room:
    def __init__(self,inNum,inAnimal):
        self.num=inNum
        self.animal=inAnimal

roomList=[]     #保存房间实例
for on in range(1,11):   #房间动物
    if randint(0,1) == 1:
        ani = Tige()
    else:
        ani = Sheep()
    room = Room(on,ani)
    roomList.append(room)
shijian=time()
while True:
    overtime=time()
    if overtime-shijian>=30:
        print('游戏时间结束')
        for one in roomList:
            print('当前方便编号是:{},动物是:{},体重是:{}'.format(one.num,one.animal.zhonglei,one.animal.tizhong2))
        break
    #随机给出房间编号
    roomNum=randint(1,10)
    roomOBjece = roomList[roomNum-1]  #房间的动物的对象
    answer=input('当前房间编号是:{},是否选择敲门(y/n)'.format(roomNum)).strip()
    if answer == 'y':#用户选择敲门
        roomOBjece.animal.roar()
    fooda=input('请投喂食物:(肉/草)').strip()
    roomOBjece.animal.food(fooda)

 

posted @ 2019-05-10 10:00  盗月骑士  阅读(127)  评论(0)    收藏  举报