Internacionalización con locale

El módulo locale adapta el lenguaje al idioma del país deseado permitiendo la internacionalización de Python.

Para hacer uso del módulo es necesario importarlo primero:

>>> import locale

Tras importarlo, se puede usar, por ejemplo, para poner los mensajes de Python en castellano con la siguiente instrucción.

>>> locale.setlocale(locale.LC_ALL, 'es_ES')
'es_ES'

Con el método localeconv() se puede ver la base de datos de las convenciones que se usan para internacionalizar.

En el siguiente ejemplo se muestra el antes y después de cambiar a español.

>>> import locale
>>> locale.localeconv()
{'int_curr_symbol': '', 'currency_symbol': '', 'mon_decimal_point': '', 'mon_thousands_sep': '', 'mon_grouping': [], 'positive_sign': '', 'negative_sign': '', 'int_frac_digits': 127, 'frac_digits': 127, 'p_cs_precedes': 127, 'p_sep_by_space': 127, 'n_cs_precedes': 127, 'n_sep_by_space': 127, 'p_sign_posn': 127, 'n_sign_posn': 127, 'decimal_point': '.', 'thousands_sep': '', 'grouping': []}
>>> locale.setlocale(locale.LC_ALL, 'es_ES')
'es_ES'
>>> locale.localeconv()
{'int_curr_symbol': 'EUR ', 'currency_symbol': 'Eu', 'mon_decimal_point': ',', 'mon_thousands_sep': '.', 'mon_grouping': [3, 3, 0], 'positive_sign': '', 'negative_sign': '-', 'int_frac_digits': 2, 'frac_digits': 2, 'p_cs_precedes': 0, 'p_sep_by_space': 1, 'n_cs_precedes': 0, 'n_sep_by_space': 1, 'p_sign_posn': 1, 'n_sign_posn': 1, 'decimal_point': ',', 'thousands_sep': '', 'grouping': [127]}

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *