[pyar] Hola Mundo y [HELP!] Consulta sobre encoding de archivo...
Leandro E. Colombo Viña
colomboleandro en gmail.com
Mar Mayo 28 20:04:32 ART 2013
Ahhhh! Entonces debería hacer un "open" del CSV que está codificado en
ISO-8859-1 y luego un "close" para uqe me lo guarde como UTF-8. Y después
trabajo con el archivo ese que está directamente en UTF-8.
Ahora lo que no entendí muy bien, es el uso del *with*. ¿Cuál es la
diferencia?
MIL GRACIAS!
Ya lo estoy probando
El 28 de mayo de 2013 15:01, Juan Ignacio <euribates en gmail.com> escribió:
> Si, con with sería lo deseable, o con try/finally. Lo puse así para
> simplificar el ejemplo. Gracias por el apunte.
>
>
> 2013/5/28 Roberto Alsina <ralsina en netmanagers.com.ar>
>
>> On 28/05/13 13:53, Juan Ignacio wrote:
>> > Puedes usar el módulo codecs para abrir un fichero indicándole la
>> > codificación a usar. Por ejemplo, si tienes un fichero en iso-8859-1 y
>> > quieres salvarlo como utf-8, puedes hacer:
>> >
>> > import codecs
>> > fin = codecs.open('entrada.txt', 'rb', encoding='iso-8859-1')
>> > fout = codecs.open('saluda.txt', 'wb', encoding='utf-8')
>> > for linea in fin.readlines():
>> > fout.write(linea)
>> > fout.close()
>> > fin.close()
>> >
>>
>> Ese código tiene un problemita: si pasa algo entre el open y el close
>> (ya sé que en este ejemplo sería raro ;-),
>> leakeás filehandles que en linux no importa, pero en windows sí. Yo
>> vengo tratando de usar siempre context managers:
>>
>> with codecs.open(''entrada.txt', 'rb', encoding='iso-8859-1') as fin:
>> with codecs.open('saluda.txt', 'wb', encoding='utf-8') as fout:
>> for linea in fin.readlines():
>> fout.write(linea)
>>
>>
>>
>> > Con el fichero abierto de esa manera, puedes (y debes :-)) trabajar en
>> > unicode, él hace las conversiones necesarias de forma transparente.
>> > Este código, si el fichero pepe.py está correctamente codificando en
>> > utf-8, vemos que las líneas son todas unicode :
>> >
>> > import codecs
>> > for l in codecs.open('pepe.py', encoding='utf-8'):
>> > print type(l)
>>
>> _______________________________________________
>> 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/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
>
>
> --
> Juan Ignacio Rodríguez de León
> Móvil: 605 890514
> E-Mail: euribates en gmail.com
> http://www.metriz.com/
> http://descon2.com/
> http://www.elornitorrincoenmascarado.com/
>
> _______________________________________________
> 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/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20130528/42563e62/attachment.html>
More information about the pyar
mailing list