gpt4 book ai didi

python - 如何加载文件并创建无限保存文件?

转载 作者:行者123 更新时间:2023-12-01 04:47:48 24 4
gpt4 key购买 nike

所以,我正在用 python 创建一个小游戏来了解有关这种语言的更多信息,我有两个问题:

第一 - 有没有办法让玩家每次点击“新游戏”时,程序都会创建一个新的保存文件?

第二 - 如何加载已保存的文件?它们是文本文件,我不知道如何加载它们。保存的东西有金币数、生命值、角色名字等。玩家可以选择要加载哪个文件?

感谢您的关注。

最佳答案

保存很容易。您有很多选择,但其中两个主要选项是:

1)pickle模块

https://docs.python.org/2/library/pickle.html

基于 C 代码构建(默认情况下,在 Python3x 中),这是一种非常快速的序列化对象并恢复它们的方法。对文件使用唯一的名称,并查看“dump”和“load”方法。

根据文档,此示例应该可以帮助您入门:

# Save a dictionary into a pickle file.
import pickle

favorite_color = { "lion": "yellow", "kitty": "red" }

pickle.dump( favorite_color, open( "save.p", "wb" ) )

# Load the dictionary back from the pickle file.

favorite_color = pickle.load( open( "save.p", "rb" ) )
# favorite_color is now { "lion": "yellow", "kitty": "red" }

在 tkinter 中,这个(tkFileDialog)

http://tkinter.unpythonic.net/wiki/tkFileDialog

应该帮助您创建一个用于选择文件位置的对话框。这是其用法的一个很好的示例:

Opening File (Tkinter)

2)自己加载/保存和解析文件

你说你的游戏是为了学习目的,所以通过手动文件io来做事并不是一个坏主意。该文档有一个很好的入门位置,使用“打开”作为处理文件的主要功能。再次强调,“无限”文件只是意味着为每个文件使用唯一的名称

https://docs.python.org/2/tutorial/inputoutput.html

手动 io 的示例是

# writing data to a file
favorite_colors = {'tim':'yellow','mary':'blue'}

newsave_file = open(filename,'w')
for key, val in favorite_colors.items():
newsave_file.write(str(key)+'|'+str(val)+'\n')

newsave_file.close()

# reading data from a file
favorite_colors = {}
open_file = open(filename,'r')
for line in open_file:
pair = line.split('|')
favorite_colors[pair[0]] = pair[1]
open_file.close()

您可能想要执行一些操作,例如使用 try/catch block 来确保程序不会崩溃,或者使用更复杂的解析器技术。这一切都取决于你!

关于python - 如何加载文件并创建无限保存文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29067078/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com