ConfigParser
Verfasst: Mittwoch 20. September 2006, 09:23
Der SafeConfigParser ist schon eine tolle Sache. Aus folgender Datei
erhalte ich:
Wenn ich das jetzt aber wieder ganz naiv speichere, wird daraus die Datei
was beim erneuten Parsen aber Probleme wegen des %-Zeichens macht. Man sollte doch meinen, das der SafeConfigParser den Kram so speichert, dass er selbst ihn auch wieder lesen kann? Oder habe ich irgendwas uebersehen, das automatisch dafuer sorgt, dass % als %% gepeichert wird? Oder spricht irgendwas gegen ein solches Feature?
Mein Code zum Lesen und Schreiben:
Der Vollstaendigkeit halber hier nochmal die erste Datei mit dem RawConfigParser gelesen:
Ich wusste naemlich bis vor kuzem gar nicht, was die Unterschiede zwischen den verschiedenen Parsern sind... 
Code: Alles auswählen
[test]
a = abcd
b = ab%%cd
c = gg%(a)sgg
Code: Alles auswählen
a --> 'abcd'
b --> 'ab%cd'
c --> 'ggabcdgg'
Code: Alles auswählen
[test]
a = abcd
b = ab%cd
c = ggabcdgg
Mein Code zum Lesen und Schreiben:
Code: Alles auswählen
from ConfigParser import SafeConfigParser as Parser
def save(data, filename):
"""data: dictionary"""
parser = Parser()
parser.add_section("test");
for entry in data:
parser.set("test", entry, data[entry])
parser.write(open(filename, "w"))
def read(filename):
data = {};
parser = Parser();
parser.readfp(open(filename, "r"));
for entry in parser.options("test"):
data[entry] = parser.get("test", entry);
return data;
Der Vollstaendigkeit halber hier nochmal die erste Datei mit dem RawConfigParser gelesen:
Code: Alles auswählen
a --> 'abcd'
b --> 'ab%%cd'
c --> 'gg%(a)sgg'
