如何在使用pyinstaller编译的可执行文件中持久存储/存储数据

时间:2019-01-28 05:43:57

标签: python local-storage executable pyinstaller

我需要在本地存储用户输入到我的exe中的一些基本数据。该程序是使用pyinstaller编译的,并且以前使用os open方法将数据保存到txt文件中。据我了解,macOS(我的操作系统虽然与Windows有很好的交叉兼容性)会锁定可执行文件,以便它们不会进行任何文件更改。该程序当前确实会保存数据,但是当再次运行该可执行文件时,将不再能够访问旧数据。

很明显,应用程序一直都在本地存储东西,如何在python / pyinstaller组合中专门保存数据?

对不起,如果这是一个简单的问题,那肯定很简单,但我在任何地方都找不到有关此文档的信息。

1 个答案:

答案 0 :(得分:0)

您可以使用

os.path.expanduser('~user')

要以跨平台方式获取用户主目录,请参见How to find the real user home directory using python?

您的应用程序应该在用户主目录中具有写权限,因此您可以让它在How to store Python application data之后在其中创建和修改数据文件。