Python游戏保存文件

时间:2011-04-27 04:53:45

标签: python file save

我正在用Python编写游戏,并且已经到了需要一种方法来保存玩家进度的地步。当玩家退出游戏时,我想让脚本创建一个文本文件并写几行(用于存储stat变量和房间号)。但我还需要它来检查该文件是否在启动时退出,如果是,则将存储的值应用于相应的变量。有人可以帮忙吗?

3 个答案:

答案 0 :(得分:4)

这里有两个不同的问题:

  1. 文件中存储的内容以及如何存储
  2. 何时存储以及何时加载
  3. 的逻辑

    第一个问题更容易解决,因为它更通用。这里有几个不错的选择:一个是使用Python的ConfigParser类用于Windows .ini - 就像配置文件一样。或者,您可以使用pickle简单地转储某种配置/设置数据结构(可能是嵌套的dict)。然后是内置的SQLite绑定。还有其他选择 - 这一切都取决于您想要的复杂程度。

    第二个问题更具体到您的应用程序。您可以尝试在启动时打开配置文件,如果它在那里,请阅读其内容。稍后,您可以定期将设置/进度存储到其中。建议:始终将完整的设置保持在一致的数据结构中 - 即使您在阅读时只有部分设置在配置文件中(由于某种原因) ,具有您设置的默认值。

答案 1 :(得分:0)

import os
if os.path.exists('yourplayerfile'):
   with open('yourplayerfile') as f:
        # work with f
with open('yourplayerfile','a') as f:
     # update f

这是你必须使用的大纲。

答案 2 :(得分:0)

我建议你保存在sqlite或类似的东西......但我不明白你的问题在哪里?保存文件还是读取文件?

try:
   f=open('/tmp/workfile', 'w')
   # i find file 
except:
   #there is no file
<open file '/tmp/workfile', mode 'w' at 80a0960>

... 阅读文档http://docs.python.org/release/2.5.2/tut/node9.html