[Tutor PyCZ] UnicodeEncodeError

Petr Prikryl PrikrylP na skil.cz
Pondělí Srpen 8 07:22:27 CEST 2005


rajcze
> 
> tak sem to nakonec obesel, problem byl evidentne nekde v metode
> __str__ nebo ve me... tak sem si nepsal vlastni funkci na
> 'vizualizaci' XML stromu

Odhaduji, že problém spočíval v tom, že se data načítala do řetězce
ne jako unicode. Obyčejný řetězec (ne unicode) se považuje za prostou
sérii bajtů a o kódování se člověk musí postarat sám. Metoda __str__()
tím pádem nemůže vědět, jaké kódování se používá a nemůže se 
korektně vypořádat se znaky s ordinálním číslem nad 127. Doporučuji
výsledek obalit takto:

s = 'původní řetězec'
s2 = unicode(s, 'utf-8')

Pak by print a vše podobné mělo začít fungovat.

pepr


Další informace o konferenci Tutor