Foros del Web » Programando para Internet » Python »

Ñ y acentos python

Estas en el tema de Ñ y acentos python en el foro de Python en Foros del Web. Hola que tal tengo una base de datos cuya codificación de caracteres esta en latin1_swedish_ci y dentro de sus tablas y campos las ñ son ...
  #1 (permalink)  
Antiguo 02/04/2013, 11:59
 
Fecha de Ingreso: abril-2008
Mensajes: 316
Antigüedad: 16 años, 7 meses
Puntos: 3
Ñ y acentos python

Hola que tal tengo una base de datos cuya codificación de caracteres esta en latin1_swedish_ci y dentro de sus tablas y campos las ñ son ñ, las letras con acentos son letras con acentos.

Lo que necesito es obtener esas ñ como ñ en python, y como guardar las ñ como ñ en mysql ya que alguardarlas de la aplicacion a la BD, se guardar algo como \u001.
  #2 (permalink)  
Antiguo 02/04/2013, 12:42
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: Ñ y acentos python

Trabaja tus strings como unicode y utiliza encode y decode donde sea necesario.

Probablemente este post te pueda dar una idea básica.
http://stackoverflow.com/questions/6...atin1-to-utf-8
  #3 (permalink)  
Antiguo 02/04/2013, 13:10
 
Fecha de Ingreso: abril-2008
Mensajes: 316
Antigüedad: 16 años, 7 meses
Puntos: 3
Respuesta: Ñ y acentos python

ok, amm estoy usando sqlalquemy para las consultas como puedo decodificar los string que vienen dentro de los objetos a unicode, para que al momento de serializar los objetos no truenen. por que enviando la lista tal cual simple json, arroja el error

UnicodeDecodeError
  #4 (permalink)  
Antiguo 03/04/2013, 07:07
Avatar de korg1988  
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 18 años, 4 meses
Puntos: 19
Respuesta: Ñ y acentos python

Al guardar hace lo siguiente
datos_serializados = funcion_serializadora(tuvariable.encode("latin1"))

al leer hace lo siguiente

mis_datos_originales = funcion_serializadora_inversa(mis_datos_serializad os.decode("latin1"))

Espero te sirva, y lee sobre unicode para entender bien que es el encode y el decode...
Todo dato que ingrese o salga del sistema lo hace como una cadena de bytes codificada con un formato particular, definido dentro del encoding que vayas a utilizar (utf-8, etc)... por tal motivo tenes que conocer siempre que estas usando en un momento dado, si un objeto unicode, o un objeto str (bytes crudos) simplemente! y codificar y decodificar segun sea el caso (como decia razpeitia)
  #5 (permalink)  
Antiguo 01/10/2013, 18:22
Avatar de danielbetu  
Fecha de Ingreso: agosto-2013
Mensajes: 1
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Ñ y acentos python

Miren este excelente aporte de David Villa, a mi me dió muy buen resultado

http://crysol.org/es/node/454


Etiquetas: acentos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:49.