我正在用 Python 创建一个需要读取配置文件的小应用程序。
我打算将此文件保存/etc
在 Linux 上的文件夹中,但我希望我的应用程序可以在其他操作系统上运行。
问题是:是否有某种常量、变量、包等可以告诉我操作系统上最合理的设置文件夹的路径?
我正在用 Python 创建一个需要读取配置文件的小应用程序。
我打算将此文件保存/etc
在 Linux 上的文件夹中,但我希望我的应用程序可以在其他操作系统上运行。
问题是:是否有某种常量、变量、包等可以告诉我操作系统上最合理的设置文件夹的路径?
也许最好将您的配置文件放在与您的实际模块/应用程序相关的文件夹中?确定模块的位置可能不是直截了当的,但这个线程应该会有所帮助。
一个可能有用的工具 configparser 有一个函数可以在一些标准位置查找配置文件:RawConfigParser.read(filenames)
据我所知,没有内置常量,但手动操作似乎相当容易。
您可以使用sys.platform
或os.name
获取操作系统,然后根据此设置配置文件夹。
os_name = sys.platform
cfg_folder = {'linux2': '/etc', 'win32': 'folder', ...}[os_name]
您可能需要检查http://docs.python.org/library/os.html#os-file-dir。获取根路径后,您可以根据工作操作系统选择特定路径。