Ernesto,
Bom dia,
Codificacao eh realmente um problema, especialmente dentro de banco de
dados.
Eu normalmente nao uso qq acentuacao devido a isso e para evitar dor
de cabeca para quem recebe meus arquivos.
Podem nao sair bonitos mas nao saem truncados.
Se tiver curiosidade, de uma olhada:
http://en.wikipedia.org/wiki/Windows-1252
Rode este codigo e vera que a representacao interna nao eh uniforme. 1
byte x 2 bytes por caracter e olha que tem ate de 4 bytes.
No aviaozinho -*- eh defininda a codificacao que tambem pode ser
latin-1 utf-8 ,...
#!/usr/bin/env python
# -*- coding: win-1252 -*-
palavra1 = 'aeioucC'
palavra2 = 'áéíóúçÇ'
palavra3 = palavra1 + palavra2
print "p1", palavra1, len(palavra1),"bytes"
print "p2", palavra2, len(palavra2),"bytes"
print "p3", palavra3, len(palavra3),"bytes"
#
for i in range(len(palavra1)):
print i, ord(palavra1[i])
for i in range(len(palavra2)):
print i, ord(palavra2[i])
[]s
julio