On Wed, Dec 05, 2012 at 12:13:25PM +0100, Luca Mandolesi wrote: > > quale codifica dare al codice python?
Mi associo a quelli che con Python e Unicode e UTF-8 hanno battuto il naso! Il charset con cui scrivi il sorgente non è fondamentale, sebbene sia meglio usare UTF-8 e dichiararlo con lo pseudo-commento all'inizio del file stesso. La parte importante e complicata è gestire correttamente il charset durante la vita delle variabili nel programma. Se può aiutare qui ho preso un po' di appunti, anche se gli esempi sono su MySQL credo che la logica sia la stessa con PostgreSQL: https://www.rigacci.org/wiki/doku.php/doc/appunti/prog/python_unicode In pratica devi sempre assicurarti che le variabili durante la vita del programma siano type() = unicode. Qusto ha il vantaggio - ad esempio - che la lunghezza in una stringa della "a accentata" sia 1 carattere, indipendentemente dalla codifica (in UTF-8 sono due byte). Quindi devi stare attento quando leggi dal database a decodificare le stringhe. Se hai fatto tutto per bene avviene in automatico, altrimenti ti trovi una stringa type() = str e quindi la devi forzare con pippo = pippo.decode('utf-8'). Infine devi stare attento a codificare (in utf-8, mi raccomando!) le stringhe quando ne fai l'output (a schermo, nel database, su file, ecc.). Spero di non averti confuso ulteriormente! -- Niccolo Rigacci - http://www.rigacci.net/ Firenze - Italy Tel. Office: +39-055-9331021, Mobile: +39-327-5619352 _______________________________________________ Gfoss@lists.gfoss.it http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 630 iscritti al 1.12.2012