Miten ihmeessä saa ääkköset tulostumaan oikein? Käytän IDLE-ympäristöä ja luen tiedostosta merkkijonoja, joissa on ääkkösiä ja tulostan ne. Ääkköset tulevat "\xe4" ja "\xf6".
Tallensin tekstitiedoston, jota luen koodauksella utf-8 ja lisäsin ohjelmani alkuun
# -*- coding: utf-8 -*-
mutta ei silti toimi. Ohjelmatiedostoon kirjoitetut ääkköset toimivat kyllä, joten vika on tuossa tiedostosta tulevassa tekstissä. Yritin tulostaa filu.encoding, mutta se sanoo vain "None".
Tallensin tekstitiedoston, jota luen koodauksella utf-8 ja lisäsin ohjelmani alkuun
# -*- coding: utf-8 -*-
mutta ei silti toimi. Ohjelmatiedostoon kirjoitetut ääkköset toimivat kyllä, joten vika on tuossa tiedostosta tulevassa tekstissä. Yritin tulostaa filu.encoding, mutta se sanoo vain "None".
Vastaukset 4
Vanhimmat
No tiedostoon se kuitenkin kirjoittaa ääkköset ihan oikein. Olokuun tuolleen, luvempahan sieltä tiedostosta kaiken, vaikka helpompi olisi pienet tekstit kirjoittaa suoraan shelliin.
Kävin paskalla, tuli melkoinen pyythoni.
Auttaisko http://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=python_l2 ? Sinun pitää varmaan selvittää, mitä merkkikoodausta se tiedosto käyttää, josta luet tekstiä. En tunne 2.7:ää niin hyvin, että osaisin auttaa. Googlaa.
No nyt keksin ratkaisun: tiedostosta luetun merkkijonon perään pitää laittaa (siis siihen muuttujaan johon se on tallennettu soveltaa metodia)
.decode("utf-8")