¿Cómo fuerzo Latin-1 (que supongo significa iso-8859-1?) Salida de archivo en Python?Python: ¿Cómo fuerzo la salida del archivo iso-8859-1?
Aquí está mi código por el momento. Funciona, pero intentar importar el archivo de salida resultante en una tabla Latin-1 MySQL produce weird encoding errors.
outputFile = file("textbase.tab", "w")
for k, v in textData.iteritems():
complete_line = k + '~~~~~' + v + '~~~~~' + " ENDOFTHELINE"
outputFile.write(complete_line)
outputFile.write("\n")
outputFile.close()
El archivo de salida resultante parece estar guardado en "occidental (Mac OS Romano)", pero si luego guardarlo en América-1, sigo teniendo problemas de codificación extrañas. ¿Cómo puedo asegurarme de que las cadenas utilizadas y el archivo en sí estén codificados en Latin-1 tan pronto como se generan?
Las cadenas originales (en el diccionario textData
) han sido analizadas desde un archivo RTF; no sé si eso hace la diferencia.
Soy un poco nuevo en Python y para la codificación en general, así que me disculpo si esta es una pregunta tonta. He intentado mirar los documentos pero no he llegado muy lejos.
Estoy usando Python 2.6.1.
Gracias. Acabo de probar este código, pero obtengo: "Códec UnicodeDecodeError: 'ascii' no puede decodificar byte 0xa3 en la posición 753: ordinal no en rango (128)". Ahora intentaré asegurarme de que k y v sean objetos unicode, como se sugirió anteriormente. – AP257