[pyar] problemas con el encoding

QliX=D! [aka EHB] qlixed en gmail.com
Jue Oct 21 15:51:22 ART 2010


Y si haces:
varname= unicode(databasedata)
forzas a q varname NO sea un string, si no que sea un unicode.
ej:


In [15]: s= unicode("máma") # mama con acento.

In [16]: print type(s).__name__
-------> print(type(s).__name__)
unicode

In [17]: p= "pápa" # Papa con Acento

In [18]: print type(p).__name__
-------> print(type(p).__name__)
str

Saludos.
EHB

2010/10/21 Roberto Alsina <ralsina en netmanagers.com.ar>:
> On Thursday 21 October 2010 12:28:53 you wrote:
>> On Thursday 21 October 2010 11:18:32 Mario Cassanelli wrote:
>> > estimado, lo tuyo es que no has leido mi mensaje,
>> >
>> >  mande lo que tengo en la tabla,
>> >  lo que muestra python y al insertar un registro
>> >  en la tabla de postgresql se produce un mensaje que tambien
>> >  esta en el mail que mande.
>>
>> Fijate lo que te pregunto.
>>
>> Vos pones en tu mensaje:
>>
>> """el problema ocurre al insertar el registro
>>
>> con.query(inserto)"""
>>
>> Bueno, dependiendo de qué es esa variable inserto te va a producir cosas
>> distintas, dependiendo de qué espere con.query que le pases.
>>
>> Por ejemplo, si con.query espera que le pases los datos como un string
>> encodeado con el encoding correcto, necesitás que inserto sea un string
>> (en  python 2.x) o bytes (en python 3.x) con encoding utf-8.
>>
>> Si query hace el encoding por su cuenta, necesita que le pases un objeto
>> unicode (en python 2.x) o un string (en python 3.x)
>>
>> No es una pregunta ociosa, realmente es necesaria para saber que pasa.
>
>
> Ahhhhh mea culpa! No habia visto el programa en la posdata.
>
> Entonces me respondo a mi mismo: inserto es un string de ython 2.x con
> probablemente encoding utf-8 pero no es seguro.
>
> Te recomiendo usar objetos unicode en tu programa siempre que puedas.
>
> Porqué? Porque si no, no hay manera de saber a ciencia cierta que es esa
> variable inserto. Fijate que la armás en base a algo que sacás del dbf.
>
> Si lo que está en el dbf no es UTF-8, inserto no es UTF-8.
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>



More information about the pyar mailing list