[Python] Problemi un con la "è" su Eric4 Editor

Marco Beri marcoberi a gmail.com
Mer 18 Nov 2009 14:10:07 CET


2009/11/18 Alessandro Dentella <sandro a e-den.it>

1. La codifica dichiarata deve corrispondere alla codifica realmente
>   utilizzata
>
> il codice::
>
>   # coding: utf-8
>   print u'è'
>
> encodato latin1, produce questo errore:
>
>   sandro a bluff:/tmp$ python latin.py
>   UnicodeDecodeError: 'utf8' codec can't decode byte 0xe8 in position 0:
> unexpected end of data
>

Quello è dovuto al fatto che, tentando di stampare a video prova a fare
l'encoding in ascii.

# coding: utf-8
print u'è'.encode('ascii', 'ignore')
print u'è'.encode('ascii', 'xmlcharrefreplace')
print u'è'.encode('ascii', 'replace')

Questo codice dovrebbe non fallire, confermi?

ciò detto il codice scritto sopra eseguito in un terminale gnome (utf-8)
> produce il codice riportato mentre in emacs mi da un errore di encoding
> perchè cerca di encodarlo in ascii nel buffer di uscita di emacs (che però
> è
> utf-8...) non sono ancora riuscito a capire come configurarlo per evitare
> l'errore.
>

Mi sono abituato, quando devo fare delle print a video, ad usare una di
quelle print.

A parte che, da quando uso pdb di print a video (che prima ritenevo lo
strumento principe del debug) ne faccio molte meno.

Ciao.
Marco.

-- 
http://ThinkCode.TV - Screencast e videocorsi di programmazione
http://stacktrace.it - Aperiodico di resistenza informatica
http://beri.it - Blog di una testina di vitello
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: http://lists.python.it/pipermail/python/attachments/20091118/6824920c/attachment.htm 


Maggiori informazioni sulla lista Python