10 PEP 331: Conversiones de flotantes/cadenas independientes de regionalización

El módulo locale permite al software en Python elegir diversas conversiones y convenciones de presentación adaptadas a las caraterísticas de un país o lengua. Sin embargo, el módulo tenía cuidado de no cambiar la regionalización de números porque hay varias funciones de la implementación de Python que exigen que la regionalización permanezca con un valor de 'C'. A menudo ocurría esto porque el código utilizaba la función atof() de la biblioteca de C.

Al no establecer el valor de la regionalización para los números, se causaban problemas a las extensiones que utilizaban bibliotecas de C de terceros, sin embargo, porque ellas utilizaban el valor regionalizado correcto. El ejemplo más llamativo era GTK+, cuyos controles de la interfaz de usuario no presentaban los números en la regionalización activa.

La solución descrita en la PEP es añadir tres nuevas funciones al API de Python que realizan conversiones ASCII, independientes de la regionalización:

el código de estas funciones se tomó de la biblioteca GLib (http://developer.gnome.org/arch/gtk/glib.html), cuyos desarrolladores dieron una nueva licencia y donaron amablemente las funciones relevantes a la Python Software Foundation. El módulo locale puede cambiar la regionalización de los números, permitiendo que las extensiones como GTK+ produzcan resultados correctos.

See Also:

PEP 331, Conversiones de flotantes/cadenas independientes de regionalización
Escrita por Christian R. Reis e implementada por Gustavo Carneiro.

Consultar en Acerca de este documento... información para sugerir cambios.