User Tools

Site Tools


doc:appunti:prog:python_unicode

This is an old revision of the document!


Unicode con Python

Vedere l'articolo Python Unicode Tutorial.

Oppure queste slide: Unicode In Python, Completely Demystified.

Codifica implicita della print

Attenzione ad alcuni comportamenti impliciti del Python, ad esempio una semplice

print string

codifica il contenuto di string in base all'output: se si tratta di stdout viene usata la codifica utf-8 (per della variabile d'ambiente LANG=en_US.UTF-8), se invece si ridirige l'output su file (oppure la variabile LANG non è impostata correttamente) viene usata la codifica ascii ed eventualmente scatta l'errore:

UnicodeEncodeError: 'ascii' codec can't encode character u'\xe0' in position 11: ordinal not in range(128)

Per avere un comportamento univoco conviene codificare esplicitamente l'output:

print string.encode('utf-8')
doc/appunti/prog/python_unicode.1354531307.txt.gz · Last modified: 2012/12/03 11:41 by niccolo