Python实现小黑屋游戏的完整实例


Posted in Python onJanuary 06, 2021

大一上学期学习的内容之一,小黑屋比较好玩。

1.导入函数库

先导入random、time两个函数库的使用来达到随机生成人物、生成人物加载时间的目的。

import random
import time

2.创建列表

创建事件、资源、技能列表(可以自己思考然后加入你所认为需要的列表)。

event = ["遇到饥寒交迫的人"]#事件列表
source = ["木材","肉","布"]#资源列表
skill = ["潜水","爬山","跳跃"]#技能列表

3.创建函数

初始人物状态

def init():#初始人物
 person = {"HP":100,"hungry":100,"EQ":50,"skill":"","木材":2,"fire":0}#人的初始状态

在这里后面可以加上time函数库,使生成人物需要加载时间来让游戏更加真实。

time.sleep(3)#停止运行3秒
 print("人物生成中>>>>>>>>>50%")
 time.sleep(2)#停止运行2秒
 print("人物生成中>>>>>>>>>>>>>>>>>>>80%")
 time.sleep(1)#停止运行1秒
 print("人物生成中>>>>>>>>>>>>>>>>>>>>>>>>>>>100%")
 showperson(person)
 return person

火堆燃烧状态

def fire(person):
 person["木材"] = person["木材"] - 1
 person["hungry"] = person["hungry"] - 20
 person["fire"] = 1
 print("火堆燃起来了!")
 return person

遇到事件的可能性和状态(因为前面事件列表只写了一个,所以我这里的事件就只是遇到饥寒交迫的人,你们可以自行修改)。

def Playgame(person):
 #point = random.randint(0,1)
 point = 0
 if point == 0:
  print("你遇到了饥寒交迫的人!")
  choose = input("是否要给他木材:")
  print("你的火堆熊熊燃烧中...")
  if choose == "是":
   person["木材"] = person["木材"] - 1
   person["EQ"] = person["EQ"] + 10
   if 80 < random.randint(0,100):
    skill = random.choice("skill")
    skill.remove(skill)
    person["skill"] = person["skill"] + skill
    person["HP"] = person["HP"] + 100
  else:
   person["HP"] = person["HP"] - 10
   print("和他挑战你输了")
  return person

人物现在的状态

def showperson(person):
 print("你现在的状态是:",person)

调用函数

person = init()
person = fire(person)
person = Playgame(person)
showperson(person)

结果如下:

Python实现小黑屋游戏的完整实例

或者

Python实现小黑屋游戏的完整实例

要注意导入函数库,还有只创建需要使用的函数,以便于后面函数的调用。

总结

到此这篇关于Python实现小黑屋游戏的文章就介绍到这了,更多相关Python小黑屋游戏内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python实现图像几何变换
Jul 06 Python
python下解压缩zip文件并删除文件的实例
Apr 24 Python
Python根据成绩分析系统浅析
Feb 11 Python
PYQT5实现控制台显示功能的方法
Jun 25 Python
Python3 requests文件下载 期间显示文件信息和下载进度代码实例
Aug 16 Python
详解Python 重学requests发起请求的基本方式
Feb 07 Python
Python selenium页面加载慢超时的解决方案
Mar 18 Python
python能在浏览器能运行吗
Jun 17 Python
浅谈keras 模型用于预测时的注意事项
Jun 27 Python
Python接收手机短信的代码整理
Aug 02 Python
基于python实现简单网页服务器代码实例
Sep 14 Python
通过实例解析python and和or使用方法
Nov 14 Python
Jupyter Notebook 安装配置与使用详解
Jan 06 #Python
在Ubuntu中安装并配置Pycharm教程的实现方法
Jan 06 #Python
python requests库的使用
Jan 06 #Python
Python 实现进度条的六种方式
Jan 06 #Python
基于Python实现天天酷跑功能
Jan 06 #Python
python 下载文件的几种方法汇总
Jan 06 #Python
python 视频下载神器(you-get)的具体使用
Jan 06 #Python
You might like
html中select语句读取mysql表中内容
2006/10/09 PHP
joomla组件开发入门教程
2016/05/04 PHP
PHP封装的数据库模型Model类完整示例【基于PDO】
2019/03/14 PHP
Git命令之分支详解
2021/03/02 PHP
Save a File Using a File Save Dialog Box
2007/06/18 Javascript
js获取url参数的使用扩展实例
2007/12/29 Javascript
JS模拟面向对象全解(一、类型及传递)
2011/07/13 Javascript
浅谈Javascript面向对象编程
2011/11/15 Javascript
jQuery easyui datagrid动态查询数据实例讲解
2013/02/26 Javascript
现如今最流行的JavaScript代码规范
2014/03/08 Javascript
PHP中使用微秒计算脚本执行时间例子
2014/11/19 Javascript
js与css实现弹出层覆盖整个页面的方法
2014/12/13 Javascript
Angularjs注入拦截器实现Loading效果
2015/12/28 Javascript
Bootstrap表单Form全面解析
2016/06/13 Javascript
webpack配置sass模块的加载的方法
2017/07/30 Javascript
使用webpack3.0配置webpack-dev-server教程
2018/05/29 Javascript
微信小程序 拍照或从相册选取图片上传代码实例
2019/08/28 Javascript
angular异步验证防抖踩坑实录
2019/12/01 Javascript
Vue+Element ui 根据后台返回数据设置动态表头操作
2020/09/21 Javascript
Python中input和raw_input的一点区别
2014/10/21 Python
5种Python单例模式的实现方式
2016/01/14 Python
Python文件操作,open读写文件,追加文本内容实例
2016/12/14 Python
Ubuntu安装Jupyter Notebook教程
2017/10/18 Python
Pytorch入门之mnist分类实例
2018/04/14 Python
python实现一个简单的udp通信的示例代码
2019/02/01 Python
CSS3的颜色渐变效果的示例代码
2017/09/29 HTML / CSS
丝芙兰巴西官方商城:SEPHORA巴西
2016/10/31 全球购物
澳大利亚当地最大的时装生产商:Cue
2018/08/06 全球购物
更夫岗位责任制
2014/02/11 职场文书
给公司的建议书范文
2014/05/13 职场文书
孝敬父母的演讲稿
2014/05/14 职场文书
品牌推广策划方案
2014/05/28 职场文书
2015年人事工作总结范文
2015/04/09 职场文书
七一活动主持词
2015/06/29 职场文书
承诺书的签字人,需不需要承担相应的责任?
2019/07/09 职场文书
python基础入门之普通操作与函数(三)
2021/06/13 Python