[pyar] usando caracteres unicode
Alejandro Santos
listas en alejolp.com
Sab Ago 21 19:34:01 ART 2010
2010/8/21 Andrés Gattinoni <andresgattinoni en gmail.com>:
> 2010/8/21 Federico Mendez <mendezfederico87 en gmail.com>:
>> Hola, quería saber si hay alguna ventaja o deventaja de usar:
>>
>> # -*- coding: utf-8 -*-
>>
>> al principio de un programa en vez de usar esto:
>>
>> import locale
>> locale.getdefaultlocale()
>>
>> ?? O si tienen siquiera algo que ver... jajaa
>
> No sé si no estoy mandando fruta, pero lo que tengo entendido es que esto:
>
>> # -*- coding: utf-8 -*-
>
> Le sirve al intérprete de Python para saber qué encoding debe utilizar
> para leer el código de tu archivo.
No te atajes, esta bien lo que dijiste :)
> Con esto si, por ejemplo, metés un caracter acentuado o algo así,
> Python no tiene ningún drama, sino te tira un error como este:
>
> File "test.py", line 1
> SyntaxError: Non-ASCII character '\xc3' in file test.py on line 1, but
> no encoding declared; see http://www.python.org/peps/pep-0263.html for
> details
>
> Por otro lado, supongo que el módulo locale te sirve para codificar
> los textos que utilices en tu aplicación, tanto los que vayas a
> mostrar como los que vayas a recibir.
>
Mas precisamente, el texto que se lee por entrada y salida estándar,
sys.stdin y sys.stdout. Eso se puede ver más claro con:
>>> sys.stdin.encoding
'UTF-8'
>>> sys.stdout.encoding
'UTF-8'
En mi Linux la entrada y salida estándar maneja los caracteres en
UTF-8. En Windows suele ser CP-1252; no se cual es el Mac.
--
Alejandro Santos
http://alejolp.com.ar
More information about the pyar
mailing list