caso semplicemultipiattaforma indirizzamento del file di configurazione
Ho un programma Python che intendo sostenere su entrambi i sistemi * nix e Windows. Il programma deve essere configurabile, almeno a livello globale. Esiste un modo multipiattaforma per indirizzare il file di configurazione?
I.e. Voglio scrivere invece di
import platform
if platform.system() == "Windows":
configFilePath = "C:\MyProgram\mainconfig.ini"
else:
configFilePath = "/etc/myprogram/mainconfig.ini"
qualcosa sulla falsariga di
import configmagic
configFile = configmagic("myprogram", "mainconfig")
Un po 'più avanzate casi
Lo stesso può essere applicato a utenti specifici configurazione? Cioè mantenere la configurazione in ~user/.myprogram/
sotto Unix e nella sezione del registro HKEY_LOCAL_USER
in Windows?
Possibile dupe di http://stackoverflow.com/questions/200599/whats-the-best-way-to-store-simple-user-settings-in-python e http://stackoverflow.com/questions/965694/ whats-the-official-way-of-storing-settings-for-python-programs – rubenvb
Grazie per il suggerimento, ma non è davvero un dupe. Queste due domande riguardano il formato del file di configurazione, mentre la mia domanda riguarda la sua posizione. – dpq
Non utilizzare ~/.myprogram, utilizzare XDG BaseDir Spec, che definisce dove * si * deve memorizzare/leggere le configurazioni. (per impostazione predefinita, ~/.config/mioprogramma). – WhyNotHugo