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自动化测试之从命令行运行测试用例with verbosity
Sep 28 Python
Python实现向QQ群成员自动发邮件的方法
Nov 19 Python
python+django加载静态网页模板解析
Dec 12 Python
python表格存取的方法
Mar 07 Python
Python字典创建 遍历 添加等实用基础操作技巧
Sep 13 Python
Python3批量生成带logo的二维码方法
Jun 24 Python
基于python的Paxos算法实现
Jul 03 Python
python SVD压缩图像的实现代码
Nov 05 Python
Python调用scp向服务器上传文件示例
Dec 22 Python
Python如何使用turtle库绘制图形
Feb 26 Python
Python Pandas读取Excel日期数据的异常处理方法
Feb 28 Python
python和Appium的移动端多设备自动化测试框架
Apr 26 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
php实现的在线人员函数库
2008/04/09 PHP
PHP初学者最感迷茫的问题小结
2010/03/27 PHP
php源代码安装常见错误与解决办法分享
2013/05/28 PHP
关于Sphinx创建全文检索的索引介绍
2013/06/25 PHP
ThinkPHP调试模式与日志记录概述
2014/08/22 PHP
使用GDB调试PHP代码,解决PHP代码死循环问题
2015/03/02 PHP
php实现用已经过去多长时间的方式显示时间
2015/06/05 PHP
PHP图片裁剪与缩放示例(无损裁剪图片)
2017/02/08 PHP
laravel学习笔记之模型事件的几种用法示例
2017/08/15 PHP
阿里云的WindowsServer2016上部署php+apache
2018/07/17 PHP
extjs grid设置某列背景颜色和字体颜色的方法
2010/09/03 Javascript
用jQuery与JSONP轻松解决跨域访问的问题
2014/02/04 Javascript
JavaScript lastIndexOf方法入门实例(计算指定字符在字符串中最后一次出现的位置)
2014/10/17 Javascript
js实现屏幕自适应局部代码分享
2015/01/30 Javascript
jQuery验证元素是否为空的两种常用方法
2015/03/17 Javascript
JS中mouseover和mouseout多次触发问题如何解决
2016/06/06 Javascript
微信小程序 教程之列表渲染
2016/10/18 Javascript
详谈javascript精度问题与调整
2017/07/08 Javascript
深入理解vue中slot与slot-scope的具体使用
2018/01/26 Javascript
javaScript产生随机数的用法小结
2018/04/21 Javascript
JS/HTML5游戏常用算法之路径搜索算法 A*寻路算法完整实例
2018/12/14 Javascript
JS双向链表实现与使用方法示例(增加一个previous属性实现)
2019/01/31 Javascript
js判断密码强度的方法
2020/03/18 Javascript
vue-cli3自动消除console.log()的调试信息方式
2020/10/21 Javascript
Python实现的ini文件操作类分享
2014/11/20 Python
在Windows中设置Python环境变量的实例讲解
2018/04/28 Python
对python中的pop函数和append函数详解
2018/05/04 Python
Python 互换字典的键值对实例
2019/02/12 Python
Python语言检测模块langid和langdetect的使用实例
2019/02/19 Python
python matplotlib如何给图中的点加标签
2019/11/14 Python
Python嵌套函数,作用域与偏函数用法实例分析
2019/12/26 Python
python GUI库图形界面开发之PyQt5信号与槽基本操作
2020/02/25 Python
教育专业自荐书范文
2013/12/17 职场文书
成龙洗发水广告词
2014/03/14 职场文书
银行青年文明号事迹材料
2014/05/31 职场文书
班主任工作实习计划
2015/01/16 职场文书