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实现问号表达式(?)的方法
Nov 27 Python
Linux下使用python自动修改本机网关代码分享
May 21 Python
PyQt5每天必学之组合框
Apr 20 Python
python字符串常用方法
Jun 14 Python
Flask框架web开发之零基础入门
Dec 10 Python
python标记语句块使用方法总结
Aug 05 Python
pytorch下使用LSTM神经网络写诗实例
Jan 14 Python
python函数中将变量名转换成字符串实例
May 11 Python
基于Python爬取素材网站音频文件
Oct 21 Python
Django自定义YamlField实现过程解析
Nov 11 Python
详解利用python识别图片中的条码(pyzbar)及条码图片矫正和增强
Nov 17 Python
django 认证类配置实现
Nov 11 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
德生PL550的电路分析
2021/03/02 无线电
使用TinyButStrong模板引擎来做WEB开发
2007/03/16 PHP
PHP中array_slice函数用法实例详解
2014/11/25 PHP
PHP基于自定义类随机生成姓名的方法示例
2017/08/05 PHP
PHP中引用类型和值类型功能与用法示例
2019/02/26 PHP
面向对象继承实例(a如何继承b问题)(自写)
2013/07/01 Javascript
javascript中兼容主流浏览器的动态生成iframe方法
2014/05/05 Javascript
JS实现仿京东淘宝竖排二级导航
2014/12/08 Javascript
jQuery源码分析之Callbacks详解
2015/03/13 Javascript
js 右侧浮动层效果实现代码(跟随滚动)
2015/11/22 Javascript
JS锚点的设置与使用方法
2016/09/05 Javascript
js中json处理总结之JSON.parse
2016/10/14 Javascript
微信小程序 wxapp内容组件 icon详细介绍
2016/10/31 Javascript
JS使用cookie实现只出现一次的广告代码效果
2017/04/22 Javascript
详解Angular中的自定义服务Service、Provider以及Factory
2017/04/22 Javascript
详解vuex的简单使用
2018/03/12 Javascript
D3.js(v3)+react 实现带坐标与比例尺的柱形图 (V3版本)
2019/05/09 Javascript
微信小程序保存图片到相册权限设置
2020/04/09 Javascript
python嵌套函数使用外部函数变量的方法(Python2和Python3)
2016/01/31 Python
python万年历实现代码 含运行结果
2017/05/20 Python
通过Pandas读取大文件的实例
2018/06/07 Python
Python标准库使用OrderedDict类的实例讲解
2019/02/14 Python
Python 存储字符串时节省空间的方法
2019/04/23 Python
使用python来调用CAN通讯的DLL实现方法
2019/07/03 Python
python中append实例用法总结
2019/07/30 Python
Python3使用腾讯云文字识别(腾讯OCR)提取图片中的文字内容实例详解
2020/02/18 Python
15行Python代码实现免费发送手机短信推送消息功能
2020/02/27 Python
Python求两个字符串最长公共子序列代码实例
2020/03/05 Python
DataFrame 数据合并实现(merge,join,concat)
2020/06/14 Python
Python openpyxl模块实现excel读写操作
2020/06/30 Python
德国珠宝和手表在线商店:VALMANO
2019/03/24 全球购物
当我正在为表建立索引的时候,SQL Server 会禁止对表的访问吗
2014/04/28 面试题
致标枪运动员加油稿
2014/02/15 职场文书
市场营销计划书范文
2015/01/16 职场文书
六一文艺汇演开幕词
2015/01/29 职场文书
消费者理赔投诉书
2015/07/02 职场文书