如何将加载/保存功能合并到我用python编写的游戏中

时间:2011-12-18 17:23:14

标签: python linux python-2.7 python-2.x

如何在我用python 2.7编写的游戏中将保存和加载合并到一个文件中。 这里有源代码https://github.com/bob53124/Charlies-Adventure/blob/master/game.py可供查看。如果您有任何想法请回复。顺便说一下,我把它写在一个linux盒子上

2 个答案:

答案 0 :(得分:5)

您可以使用Pickle库将对象序列化到磁盘。

http://docs.python.org/library/pickle.html

恢复对象时,您将在内存中获得精确的副本。

所以你可以挑选所有游戏状态对象来保存。加载只是在适当的地方取消它们。

答案 1 :(得分:2)

举几个例子,扩展@ user604653回答...

import cPickle

gameData = {'level':1, 'score': 5000}

# save
fh = open("game.save", 'wb')
cPickle.dump(gameData, fh)
fh.close()

# load
fh = open("game.save", 'rb')
gameData2 = cPickle.load(fh)
fh.close()