2009-05-27 7 views
3

Pour certains petits programmes en Python, je voudrais définir, stocker et récupérer les préférences utilisateur dans un fichier de manière portable (multi-plateforme).

Je pense à un fichier ConfigParser très simple comme "~/.program" ou "~/.program/program.cfg".

Est-ce que os.path.expanduser() est la meilleure façon d'y parvenir ou y a-t-il quelque chose de plus simple/direct?

Répondre

8
os.path.expanduser("~") 

est plus portable que

os.environ['HOME'] 

il devrait donc être autorisé à utiliser la première.

+2

os.path.expanduser ('~') est une solution portable, mais envisager d'utiliser xdg.BaseDirectory (http://freedesktop.org/wiki/Software/pyxdg) pour trouver un emplacement approprié pour vos données spécifiques à l'application sur les plates-formes qui suivent la spécification XDG Base Directory de freedesktop.org (http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html). –

+2

J'apprécie la norme FD, mais cela nécessite un module externe, donc je voudrais vraiment aller à la solution stdlib. – steko

0

Vous pouvez utiliser os.environ:

import os 
print os.environ["HOME"] 
Questions connexes