Post by unknownPost by unknownGB: attenzione, momento quasi storico... Tento la mia prima risposta in lista!
Rullo di tamburi... :)
Post by unknownu"Perchè così?"
u"Perchè di sì!"
Questo è giusto, ma non basta. In che encoding è salvato il file? Se è in
latin1 la tua i accentata sarà rappresentata dal byte 0xEC; se è in utf8
sarà la coppia di byte 0xC3 0xAC. Se non si conosce questa informazione
diventa difficile sapere chsa voglia dire 0xEC: per esempio interpretata in
un encoding russo (koi8-r) 0xEC rappresenta la lettera "?" (la L maiuscola
in cirillico). E così via, incasinando...
Il "commento magico" in cima ai sorgenti Python serve a specificare cosa
vogliono dire i caratteri con valore ascii > 127 nel sorgente. Senza di
quello toccherebbe tirare a indovinare (come fa Notepad, regolarmente
scazzando <http://www.hoax-slayer.com/bush-hid-the-facts-notepad.html>)
mentre Python preferisce tirare un'eccezione nel dubbio.
il mio file risulta essere salvato in utf-8 (così almeno mi indica
kate, quando gli dico di salvare il file, e nelle sue impostazioni è
settato come set utf-8).
$file programma.py
Python script, UTF-8 Unicode text executable
quindi è utf-8 anche per il sistema.
se faccio partire l'interprete in konsole, e digito
questa è una prova
ottengo, quindi senza errori.
se in konsole lancio il mio programma.py:
$ ./programma.py
SyntaxError: Non-ASCII character '\xc3' in file ./programma.py
anche mettendo u davanti alla stringa.
ora vado a leggermi http://www.python.org/peps/pep-0263.html come è
suggerito nella riga che indica l'errore.
(non l'avevo notato prima di scrivervi)
Byez
--
Gollum1
Tesssssoro, dov'é il mio tessssoro...