python 动物园_python面向对象 动物园 例题
一个动物园有十个房间,里面有两种动物,老虎、羊。老虎的体重是200斤,羊体重100斤。游戏开始之前,在10个房间里面,随机
放入老虎和羊。游戏这的目标是要把羊和老虎喂的越重越好。
游戏开始后,系统随机给出房间号。游戏者开始必须弄清楚,每个房间是老虎还是羊,方法是敲房间门,里面的动物都会叫,老虎叫声‘wow!!!’,
羊叫声是‘mie’。动物每叫一次体重减5斤。喂老虎应该输入单词meet,喂羊应该输入单词grass。喂对了体重加10斤。喂错了。体重减少10斤
游戏者需要强记每个房间的动物是什么,以便不需要敲门就可以得知里面的动物是什么,从而该喂什么。这样不断循环。游戏2分钟结束后。看看你喂的动物总体重多少
面向对象:
#定义 类 使用 class 关键字
class Tiger():
#静态属性
classname = '老虎'
#实例属性
def __init__(self,weight= 200):
#self代表实例对象本身
self.weight = weight
#老虎叫声,实例方法
def jiao(self):
print("wow!!!")
self.weight -= 5
#喂食
def eat(self,tt):
if tt == 'meet':
self.weight += 10
elif tt == 'grass':
self.weight -= 10
class Sheep():
#静态属性
classname = '喜羊羊'
#实例属性
def __init__(self,weight= 100):
#self代表实例对象本身
self.weight = weight
#老虎叫声,实例方法
def jiao(self):
print("mie!!!")
self.weight -= 5
#喂食
def eat(self,tt):
if tt == 'meet':
self.weight -= 10
elif tt == 'grass':
self.weight += 10
class Room():
def __init__(self,room_num,animal):
self.room_num = room_num
self.animal = animal
from random import randint
rooms = []
#实例化10个房间对象
for one in range(0,10):
if randint(0,1) == 1:
ani = Tiger()
else:
ani = Sheep()
#对象的组合
aaa = Room(one,ani)
#实例化的10个房间,添加到列表中
rooms.append(aaa)
import time
ss = time.time()
while True:
sss = time.time()
if sss - ss > 20:
print("游戏结束")
for idx,room in enumerate(rooms):
print("房间:%s" %(idx+1),room.animal.classname,room.animal.weight)
#print(f"{idx+ 1}的动物为{room.animal.classname}体重是{room.animal.wieht}")
break
#随机出现1到10作为列表下标
room_no = randint(1, 10)
room = rooms[room_no-1]
mm = input("我们来到了房间:%s,要敲门吗?[y/n]" %room_no)
if mm == 'y':
room.animal.jiao()
yy = input("请喂食:")
room.animal.eat(yy)
python 动物园_python面向对象 动物园 例题相关推荐
- python设计一个动物类_python面向对象 动物园 例题
一个动物园有十个房间,里面有两种动物,老虎.羊.老虎的体重是200斤,羊体重100斤.游戏开始之前,在10个房间里面,随机 放入老虎和羊.游戏这的目标是要把羊和老虎喂的越重越好. 游戏开始后,系统随机 ...
- python 对象_python面向对象
OOP -面向对象 1.python的面向对象相关概念 2.类与对象 2.1 类和对象的创建 2.2 类属性与实例属性 2.3 类方法和实例方法 2.4 self 3.面向对象编程 封装 继承 构造i ...
- python多态_Python面向对象教程之多态
今天给大家介绍面向对象最后一个重要的特性--多态.如果想温习前两个重要特性(继承和封装),可以点开:<Python面向对象教程之基本概念>.<Python面向对象教程之单继承> ...
- python 封装_Python 面向对象三大特性之封装
封装 定义:隐藏对象的属性和实现细节,仅对外提供公共访问方式. [好处] 将变化隔离: 便于使用: 提高复用性: 提高安全性: [封装原则] 将不需要对外提供的内容都隐藏起来: 把属性都隐藏,提供公共 ...
- cs精英游戏python代码_python面向对象-cs游戏示例
#!/usr/local/bin/python3 # -*- coding:utf-8 -*- class Role(object): n = 123 # 类变量 name = "我是类na ...
- python小鱼_Python面向对象练习-通过pygame改良乌龟吃鱼
先看看最后效果 图片的话是从网上小鱼儿那个案例里面拿的,实现的功能如下: 是通过方向键操作乌龟,进行吃鱼 吃鱼的时候根据乌龟的x,y坐标和鱼的x,y进行检测,在碰撞区域则干掉这条鱼 背景音乐和吃鱼音乐 ...
- python是一门面向对象的编程语言_python面向对象
第六章 对象(Object) 什么是对象? - 对象是内存中专门用来存储数据的一块区域. - 对象中可以存放各种数据(比如:数字.布尔值.代码) - 对象由三部分组成: 1.对象的标识(id) 2.对 ...
- python面向对象类创建人物类包含姓名、职业_Python面向对象思想与应用入门教程【类与对象】...
本文实例讲述了Python面向对象思想与应用.分享给大家供大家参考,具体如下: 面向对象思想 1.面向对象的设计思想 面向对象是基于万物皆对象这个哲学观点. 2.面向对象和面向过程的区别 面向过程 在 ...
- python对象和类区别_python面向对象(类与对象)
面向对象思想 关注公众号"轻松学编程"了解更多. 1.面向对象的设计思想 面向对象是基于万物皆对象这个哲学观点. 2.面向对象和面向过程的区别 面向过程 在生活中: 它是一种看待问 ...
- python面向对象编程中方法和属性_Python面向对象编程中关于类和方法的学习笔记...
Python面向对象编程中关于类和方法的学习笔记 类与类方法是面向对象的编程语言中必不可少的特性,本文总结了Python面向对象编程中关于类和方法的学习笔记,需要的朋友可以参考下 类和实例 pytho ...
最新文章
- JAVA基础——编程练习(一)
- 跟郎朗媳妇有得一拼的AI,只看弹琴动作,完美复现原声 | CVPR 2020
- 【NLP】ACL 2010-2020研究趋势总结
- String对象的intern()
- arcgis选出点规定范围的面
- JSP中get和post请求方式的区别及乱码解决方法
- strlen() Bug
- 开始深入的学习javascript
- zeromq不需要消息服务器,ZeroMQ发布订阅TCP丢弃消息订阅服务器失败
- 软件版本 —— Alpha、Beta、RC、Stable版本的区别
- 创建Windows Mobile上兼容性好的UI 程序
- iOS开发--添加定位功能
- Ehcache缓存的使用
- 如何批量将 Xlsx 格式的 Excel 文档转为 Xls 格式
- cadence Allegro17.2关闭start page 界面方法
- 信奥赛1990:【19CSPS提高组】划分
- My Fifty-First Page - 组合总和 - By Nicolas
- 服务器网卡不显示了,重装系统后网络适配器怎么不见了?没有网络适配器解决方法...
- numpy.random.seed()用法详解
- 深入了解快排 以及 优化