应用程序的数据路径 - os.environ

1 投票
1 回答
964 浏览
提问于 2025-04-18 17:18

我正在开发一个Python桌面应用程序,整体运行得很好,但我在让类找到数据库方面遇到了一些麻烦。

这个应用程序是在Windows平台上构建的,使用以下代码来创建数据库。

appDataPath = os.environ["APPDATA"] + "\\FolderName\\"

不过,在Mac上没有APPDATA这个文件夹,所以我一直在用HOME,但这样会在构建时生成名为FolderNameapplication.db的文件,这真的很麻烦。

现在数据库放在桌面(HOME)上,我已经去掉了“\FolderName\”这个扩展名,我需要让appDataPath变量指向这个数据库。我该怎么做呢?

谢谢!

1 个回答

1

使用 os.path.join() 来构建路径。OS X(还有Linux)和Windows不一样,它们的路径不使用反斜杠。如果你硬编码路径分隔符,可能会遇到麻烦。(不过在Windows上,正斜杠也是可以用的……)

举个例子: os.path.join(os.environ['HOME'], 'somedir', 'mydb.db')

在OS X中,通常用来存放应用数据的地方是 ~/Library/Application Support/appname/

撰写回答