前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python第十一课:文件II存档

Python第十一课:文件II存档

作者头像
HuangWeiAI
发布2019-07-30 15:54:32
1.3K0
发布2019-07-30 15:54:32
举报
文章被收录于专栏:浊酒清味浊酒清味

在我们玩RPG游戏的时候,一个重要的功能就是存档,存档可以让我们再续前缘。其实存档的基本原理就是把玩家当前的数据写入到文件中保存起来,然后等玩家下次继续玩的时候再读取这个存档文件。在这一课,我们就来尝试实现一个简易版的可以读档存档的小游戏。

读取存档

我们选择 输入之猜一猜 这一课的猜一猜小游戏为游戏主体,用文件方法对它添加一个存档读档功能。在第一节,我们让代码读取存档,如果存档中有未完成的游戏记录,那么我们会让玩家继续游戏,如果还没有存档文件,或者存档文件是空的,那么我们就开始新的游戏。首先,我们导入了exists,getsize这两个函数,他们分别是起到检验存档文件是否存在以及存档文件是否为空的作用。其次,我们导入random模块是为了生成一个1-100的随机整数,让游戏更加完善。

接下来是一个重要的条件语句构成了读档功能的主体,如果存在存档文件且存档文件不为空,那我们读取存档。在这里,我们自然而然想到了利用文件读取功能来实现,注意到我们用 r+ 来申明文件的操作,这是一个可读可写的模式且可以对文件进行追加写入。我们考虑到玩家多次玩这个游戏,因此用 r+来实现连续存档。读取文件的时候,我们事先给存档文件一个规范格式,即第几次猜测+猜测数字+猜测状态+真实数字。这一点很重要,因为可以给我们读取文件带来便利。由于txt文件存入的是字符串,所以我们用split()函数来分割。如果没有存档文件或者存档文件为空,我们就建立新的游戏。

写入存档

在第二部代码中,我们主要实现存档功能,也就是在玩家玩游戏的过程中记录玩家的游戏数据,最后存入档案文件中。我们首先提示玩家按Ctrl+C来结束游戏,相当于一个退出游戏的操作。然后在玩家猜测错误的时候,记录玩家的猜测和猜测状态。注意到我们在第一节规定了存档的格式,所以我们用write()函数来按照这个约定格式写入文件。最后我们在玩家猜测正确,也就是完成一次游戏的时候清空文档,我们用truncate()函数来实现,注意到seek(0)是让文件找到第一行,方便全部清空。

练习题

1,手打本课代码,上网搜索你不知道的代码含义,并动手玩几次游戏,感受存档功能。

2,给小游戏添加一个限制猜测次数的功能并在存档的时候加上这个信息。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 浊酒清味 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档