《Python游戏编程入门》注-第3章3

《Python游戏编程入门》的"3.2.4 Mad Lib"中介绍了一个名为"Mad Lib"游戏的编写方法。

1 游戏玩法

"Mad Lib"游戏由玩家根据提示输入一些信息,例如男人姓名、女人姓名、喜欢的食物以及太空船的名字等。游戏根据玩家输入的信息编写出一个故事,如图1所示。

图1 "Mad Lib"游戏

2 代码分析

2.1 显示提示信息

从图1可以看出,游戏运行时,首先会显示提示信息,该提示信息由print()函数实现,如图2所示。

图2 显示提示信息

2.2 输入信息

之后,根据提示输入信息,该功能由input()函数实现,代码如图3所示。

图3 输入信息

从图3中可以看出,用户输入的信息保存在相应的变量中。

2.3 定义故事框架

接下来定义生成故事的框架,该框架保存在字符串类型的变量story中,如图4所示。

图4 定义故事框架

其中,"\n"是转义字符,表示换行,"+"后面的"\"用于多行显示字符串。字符串中的大写字母如"GUY"、"GIRL"、"PLANET"以及"NUMBER"等,是故事框架中的"占位符",之后会将其替换为用户输入的信息。

2.4 替换"占位符"

然后将故事框架中的"占位符"替换为用户输入的信息,代码如图5所示。

图5 替换"占位符"

其中,replace()是字符串的函数,该函数的作用是用第二个参数替换第一个参数,即实现了用户输入信息替换"占位符"的功能。

2.5 打印故事

最后,使用print()函数将替换"占位符"后的故事输入,实现了根据用户输入信息编写一个故事的效果,如图6所示。

图6 打印故事

3 完整代码

完整代码请参考《Python游戏编程入门注-第2章1》中提到的源代码下载地址,路径为"python游戏编程入门->code->code->chap03->MadLIbGame.py"。

相关推荐
2401_8414956427 分钟前
【计算机视觉】基于复杂环境下的车牌识别
人工智能·python·算法·计算机视觉·去噪·车牌识别·字符识别
Adorable老犀牛1 小时前
阿里云-ECS实例信息统计并发送统计报告到企业微信
python·阿里云·云计算·企业微信
倔强青铜三1 小时前
苦练Python第66天:文件操作终极武器!shutil模块完全指南
人工智能·python·面试
倔强青铜三1 小时前
苦练Python第65天:CPU密集型任务救星!多进程multiprocessing模块实战解析,攻破GIL限制!
人工智能·python·面试
Panda__Panda1 小时前
docker项目打包演示项目(数字排序服务)
运维·javascript·python·docker·容器·c#
Lris-KK2 小时前
力扣Hot100--94.二叉树的中序遍历、144.二叉树的前序遍历、145.二叉树的后序遍历
python·算法·leetcode
zy_destiny3 小时前
【工业场景】用YOLOv8实现抽烟识别
人工智能·python·算法·yolo·机器学习·计算机视觉·目标跟踪
(●—●)橘子……3 小时前
记力扣2009:使数组连续的最少操作数 练习理解
数据结构·python·算法·leetcode
nueroamazing3 小时前
PPT-EA:PPT自动生成器
vue.js·python·语言模型·flask·大模型·项目·ppt
一壶浊酒..4 小时前
python 爬取百度图片
开发语言·python·百度