2013-04-09 17 views
6

Sto tentando di scrivere (e successivamente di leggere in) il contenuto di un dizionario in ConfigParser, e credo che lo stia facendo correttamente secondo lo docs, ma non riesco a ottenerlo lavoro. Qualcuno può aiutare?Python Write Dictionary Contents to ConfigParser

import ConfigParser 
parser = ConfigParser.ConfigParser() 

parser['User_Info'] = {"User1-votes":"36","User1-gamestart":"13232323","User2-votes":"36","User2-gamestart":"234234234","User3-votes":"36","User3-gamestart":"13232323"} 

Traceback (most recent call last): File "<stdin>", line 1, in 
<module> AttributeError: ConfigParser instance has no attribute '__setitem__' 

Quello che sto cercando è quello di avere un dizionario che posso aggiornare, e alla fine in scrittura a un file di configurazione in modo che sarebbe simile:

[User_Info] 
User1-gamestart = 13232323 
User3-votes = 36 
User2-votes = 36 
User1-votes = 36 
User2-gamestart = 234234234 
User3-gamestart = 13232323 
+3

Il modulo ConfigParser non è lo stesso di ConfigParser. Quel documento è per Python 3.4, quale versione di Python stai usando? – cmd

risposta

5

Stai leggendo la documentazione per python 3.4, ma probabilmente stai usando una versione precedente di python.

Ecco come utilizzare ConfigParser nelle vecchie versioni di Python:

import ConfigParser 
parser = ConfigParser.ConfigParser() 

info = {"User1-votes":"36","User1-gamestart":"13232323","User2-votes":"36","User2-gamestart":"234234234","User3-votes":"36","User3-gamestart":"13232323"} 

parser.add_section('User-Info') 
for key in info.keys(): 
    parser.set('User-Info', key, info[key]) 

with open('config.ini', 'w') as f: 
    parser.write(f) 
+0

oh .. lo vedo ora. Grazie! –

+0

Siete i benvenuti. –