【发布时间】:2021-02-05 00:49:54
【问题描述】:
我发现其他几个人在这方面寻求帮助,但不是具体我想要做什么。我有一本包含各种格式(int、str、bool 等)的字典,我正在尝试保存它,以便以后加载它。这是代码的基本版本,没有与此无关的所有额外陷阱。
petStats = { 'name':"", 'int':1, 'bool':False }
def petSave(pet):
with open(pet['name']+".txt", "w+") as file:
for k,v in pet.items():
file.write(str(k) + ':' + str(v) + "\n")
def digimonLoad(petName):
dStat = {}
with open(petName+".txt", "r") as file:
for line in file:
(key, val) = line.split(":")
dStat[str(key)] = val
print(petName,"found. Loading",petName+".")
return dStat
简而言之,我只是通过在每行上保存一个带有 Key:Value 的文本文件来强制它,然后在加载时将它们全部拆分。不幸的是,这将我所有的 int 和 bool 都变成了字符串。有没有我可以用来保存字典的文件格式(我不需要能够阅读它,但方便会很好)我可以很容易地重新加载?
这适用于基本字典,但如果我开始添加诸如数组之类的东西,这将失控。
【问题讨论】:
标签: python python-3.x