[pyar] Unicode, str y archivos binarios...
Claudio Freire
klaussfreire en gmail.com
Jue Mar 14 13:37:43 ART 2013
2013/3/14 Santiago Paleka <santiagopaleka en gmail.com>:
>> > Y yo necesito que sean los valores de la tabla ASCII de 8 bits, o sea:
>> > á = \xe1
>> > é = \xe9
>> > í = \xed
>> > ó = \xf3
>> > ú = \xfa
>>
>> ASCII son 7 bits.
>>
>> Hay extensiones al ASCII, entonces necesitás especificar cual
>> extensión querés. Latin 1 creo que te srive:
>>
>> In [1]: u"á".encode("latin1")
>> Out[1]: '\xe1'
<snip>
>
> Muchas Gracias Roberto y Facundo,
> Busqué que otras opciones tenía para pasarle como parámetro a encode() pero
> no había visto latin1
> Con esto tengo lo que quería,
> Y si Roberto, si explota veo que hago, pero como los datos los lee desde un
> wx.TextCtrl, restrinjo desde ahí que se puede ingresar.
Ejemplo que explota:
>>> print u'€'.encode('latin1')>>> print u'€'.encode('latin1')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
UnicodeEncodeError: 'latin-1' codec can't encode character u'\u20ac'
in position 0: ordinal not in range(256)
Por suerte, se puede decirle al encode que ignore eso:
>>> print u'€'.encode('latin1', 'ignore')
>>> print u'€34'.encode('latin1', 'ignore')
34
>>>
O que los marque:
>>> print u'€34'.encode('latin1', 'replace')
?34
No sé si te sirve en tu caso.
More information about the pyar
mailing list