Tento problém vzniká, když je text převeden do lokálního kódování dvakrát.
# výchozí text:
>>> "ě š č ř"
'\xc4\x9b \xc5\xa1 \xc4\x8d \xc5\x99'
# Tady se text chybně považuje za unicode:
text = u'\xc4\x9b \xc5\xa1 \xc4\x8d \xc5\x99'.encode("utf8")
# a takovou to pak udělá "paseku":
>>> text
'\xc3\x84\xc2\x9b \xc3\x85\xc2\xa1 \xc3\x84\xc2\x8d \xc3\x85\xc2\x99'
>>> print text
Ä Å¡ Ä Å
# Takto se to opraví zpět do správného tvaru:
>>> fixed = text.encode('raw_unicode_escape').decode('utf-8')
>>> print fixed
ě š č ř
_______________________________________________
Python mailing list
[email protected]
http://www.py.cz/mailman/listinfo/python