Comment lire la configuration de la chaîne ou de la liste?
Est-il possible de lire la configuration pour ConfigParser
à partir d'une chaîne ou une liste?
Sans aucun type de fichier temporaire sur un système de fichiers
OU
Est-il une solution similaire pour cela?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser un tampon qui se comporte comme un fichier:
Python 3 solution
Dans Python 2.7, cette mise en œuvre est correcte:
configparser.readfp()
cStringIO
objets ne sont pasbuffer
s. Chaînes de caractères sont des tampons, tampons mais ne peut pas être utilisé lorsquefile
-comme les objets requis;cStringIO
s'enroule unbuffer
, afin de le faire se comporter comme unfile
. En outre, votre exemple n'est pas de démontrer comment uncStringIO
se comporte comme un fichier;getvalue
est une méthode spécifique pourcStringIO
des cas, mais les fichiers ne l'ont pas.config.readfp
est dépréciée en faveur deconfig.read_file
comme de Python 3.2La question a été étiquetée comme python 2.7, mais juste par souci d'exhaustivité: Depuis 3.2 vous pouvez utiliser le ConfigParser fonction read_string() de sorte que vous n'avez pas besoin de la StringIO méthode plus.
Python a
read_string
etread_dict
depuis la version 3.2. Il ne prend pas en charge la lecture à partir de listes.Le montre l'exemple de la lecture d'un dictionnaire. Les clés sont les noms de section, les valeurs sont les dictionnaires avec des clés et des valeurs qui doivent être présentes dans l'article.
Cette peut également être utile. Il vous montre comment lire des cordes à l'aide d'un fichier de configuration (fichier CFG).
Voici une base de config reader que j'ai fait avec les infos que j'ai recueillies à partir de l'Internet: