便携式设置和应用程序数据存储,在Python?

时间:2013-04-29 09:15:07

标签: python settings persistent-storage

什么是为本地运行(桌面)python程序存储设置和生成的应用程序数据的可移植方式?是否有一些pythonic正确的方式或广泛使用的第三方模块?

理想情况下,我想要一些可移植的方式来绑定OS X的默认系统和Windows的System.Configuration系统。我想找到一种方法来获得存储用户操作系统的持久设置数据的正确途径。

我知道各种相关技术,如sqlite / pickle / ConfigParser / json / shelve / dbm,但我还没有找到一种可移植的方法来确定用户操作系统和安装的正确位置情况...

例如在Win XP / 2000上它可能是: C:\Documents and Settings\<Windows login>\Application Data\<some app identifier>\

在Windows Vista和Windows 7上,它可能是: C:\Users\<Windows login/user name>\AppData\Roaming\<some app identifier>\

在大多数类Unix操作系统上,它可能是: ~/.<some app identifier>/

在Mac OS X上它可能是: ~/Library/Application Support/<some app identifier>

我熟悉winpaths(来自pypi),但它似乎只是windows。你是否总是使用os.path将一个点文件放在用户的主目录中并希望最好?

1 个答案:

答案 0 :(得分:2)

有一个appdirs module on PyPi可以通过便携方式解决这个问题。