Discussion:
[Python] Problemer med utf8 og læsning af filer
(for gammel til at besvare)
Bertel Lund Hansen
2016-11-22 08:57:35 UTC
Permalink
Jeg er for ikke så længe siden gået over til utf8. Det har givet
nogle nye udfordringer. Det går smertefrit at lave en hjemmeside
fordi browserne også kender utf8, men ved læsning af filer bliver
der ballade. Python læser jo én byte ad gangen, så en test som:

if 'æ' in line:
print line

virker ikke. Jeg kan godt lave en workaround (omend den er
besværlig og skal rettes til til inputfilen), men der må være en
organiseret måde at gøre det på. Er der nogen der kan hjælpe?
--
Bertel
bertel.lundhansen.dk fiduso.dk obese.dk
Anders Wegge Keller
2016-11-22 14:41:35 UTC
Permalink
På Tue, 22 Nov 2016 09:57:35 +0100
Post by Bertel Lund Hansen
Jeg er for ikke så længe siden gået over til utf8. Det har givet
nogle nye udfordringer. Det går smertefrit at lave en hjemmeside
fordi browserne også kender utf8, men ved læsning af filer bliver
print line
virker ikke. Jeg kan godt lave en workaround (omend den er
besværlig og skal rettes til til inputfilen), men der må være en
organiseret måde at gøre det på. Er der nogen der kan hjælpe?
Når du spørger på den måde, regner jeg med at du bruger python2. Du burde
bruge python3 i stedet, men hvis du ikke har mulighed for det, så start med
Py2 unicode HOWTO:

<https://docs.python.org/2/howto/unicode.html>

Du skal præfixe dine unicode strengkonstanter med u:

if u'æ' in line:
print line
--
//Wegge
Loading...