[python] python ast.literal_eval a čeština

Luboš Melichar lubos.melichar na gmail.com
Úterý Září 15 12:47:25 CEST 2009


dodavam tedy

db =  ast.literal_eval(text)

by mi mela prevest string na pozadovany pythonovsky typ, v tomto
pripade slovnik..

>>> import ast
>>> ast.literal_eval("{'muffin' : 'lolz', 'foo' : 'kitty'}")
{'muffin': 'lolz', 'foo': 'kitty'}

http://docs.python.org/library/ast.html


2009/9/15 Luboš Melichar <lubos.melichar na gmail.com>:
> Zdravim,
> jsem začátečník a tak dopředu prosím o trpělivost..
>
> Zkouším toto, v souboru mít uložený slovník, případně pole slovníků..
>
> {'cz': 'hezký', 'en': 'nice', 'de': 'schön'}
>
> vyčíst ze souboru, převést na slovník, pracovat s ním, uložit
>
> #VYCTENI ZE SOUBORU
> f = open("db.db")
> text = unicode(f.read(),('cp1250'))
> f.close()
>
> #PRACE S DB
> db =  ast.literal_eval(text)       #prevod stringu na seznam slovniku
> db['maďarština'] = 'keřmideretvář'
>
> #ZAPIS DO SOUBORU
> text2 = str(db)
> f = open("db2.db")
> f.write(text2.encode('cp1250'))  #ulozeni
> f.close()
>
> bohuzel s cestinou mam neprekonatelny problem, ve vystupnim souboru se
> mi to uklada v unicodu.
> kodovani v obou souborech mam samozrejme cp1250.
>
> diky za popostrceni
>



-- 
Sportuješ? Meloun tě zve na www.esportuj.cz !
Programuješ? Baví tě elektronika? Mrkni na meloun.esportuj.cz !


Další informace o konferenci Python