我的程序使用了很多外部文件。大多数情况下,这些文件只包含一个字典。目前我正在打开这样的文件:userdata = ast.literal_eval(open("./users.txt", "r").read())这会将字典保存到变量用户数据中。现在我可以稍微改变一下值,然后像这样写回字典:open("./users.txt", "w").write(str(userdata))显然,我无法关闭文件,因为userdata不是文件对象,而只是字典。如何关闭这些文件或它们是否自闭?userdata.close该文件可以总结为仅包含以下字符串:(实际上会有多个用户和多个键){'name' : 'User1', 'money' : 50}
1 回答

qq_遁去的一_1
TA贡献1725条经验 获得超8个赞
使用上下文管理器功能打开文件,关键字。这可确保在上下文管理器的作用域结束时始终关闭文件。with
使用以下命令读取它:
with open("./users.txt", "r") as f: userdata = ast.literal_eval(f.read())
并使用以下方法编写它:
with open("./users.txt", "w") as f: f.write(str(userdata))
添加回答
举报
0/150
提交
取消