Locale.Error: configuración de configuración regional no admitida en Python

Zeeshan Afridi 11 diciembre 2023
  1. ¿Qué es el módulo Locale en Python?
  2. ¿Qué es el locale.Error: configuración de configuración regional no admitida en Python?
  3. Cómo corregir el locale.Error: configuración de configuración regional no admitida en Python
  4. Solucione el locale.Error: configuración de configuración regional no admitida con el comando exportar
  5. Solucione el locale.Error: configuración de configuración regional no admitida desde su terminal
  6. Incluya todos los idiomas disponibles en el módulo Configuración regional
Locale.Error: configuración de configuración regional no admitida en Python

Python es un lenguaje de programación diverso y poderoso con muchas bibliotecas y marcos que le permiten lograr las tareas deseadas de manera eficiente.

Con respecto al cuidado de los desarrolladores, Python siempre está en la cima. Este es uno de los módulos famosos para ayudar a los desarrolladores a generalizar el software sin enfrentar barreras culturales, y ese módulo es Locale.

¿Qué es el módulo Locale en Python?

Como se discutió, el módulo locale se desarrolló para facilitar a los desarrolladores el manejo de ciertos problemas culturales en el software.

Así que exploremos el módulo Configuración regional e intentemos corregir uno de los errores más comunes, locale.Error: configuración de configuración regional no admitida que encontrará cuando sea nuevo en este módulo.

Antes de entrar en los detalles del error, veamos qué es el módulo locale, cómo importarlo y qué más se requiere en este módulo.

Ejemplo de código:

import locale

# get the current locale
print(locale.getlocale())

Producción :

('English_United States', '1252')

Tenemos English_United States.1252 como configuración regional preferida en nuestro caso; básicamente, depende de la configuración; es posible que tenga una configuración regional preferida diferente en sus máquinas.

Pero puede cambiar la configuración regional predeterminada a su configuración regional preferida de la lista disponible con la ayuda de la función setlocale().

locale.setlocale(locale.LC_ALL, "German")

Producción :

'German_Germany.1252'

¿Qué es el locale.Error: configuración de configuración regional no admitida en Python?

En Python, cuando es nuevo en el módulo locale, es posible que encuentre el locale.Error: configuración de configuración regional no admitida en algún momento. Y las razones por las que no instaló correctamente el módulo locale o problemas con los parámetros que está proporcionando.

Veamos un ejemplo para entender mejor el locale.Error: configuración regional no admitida.

import locale

print(str(locale.getlocale()))
locale.setlocale(locale.LC_ALL, "de_DE")

Producción :

locale.Error: unsupported locale setting

Y la razón principal detrás de este error es que su variable de entorno LC_ALL falta o no es válida. En este caso, falta de_DE, por lo que aparece el error locale.Error: configuración regional no admitida.

Cómo corregir el locale.Error: configuración de configuración regional no admitida en Python

Como hemos visto en el código anterior, ha causado el error de configuración regional y el motivo es que nos faltaban las variables de entorno o que la proporcionada no era válida. Y para arreglar eso, hay múltiples soluciones; cada uno se explica uno por uno, así que asegúrese de revisar cada uno para corregir el locale.Error: configuración regional no admitida.

Comencemos con la configuración de las variables de entorno. Para hacerlo, ve a tu terminal y escribe los siguientes comandos.

Solucione el locale.Error: configuración de configuración regional no admitida con el comando exportar

export LC_ALL="en_US.UTF-8"
export LC_CTYPE="en_US.UTF-8"
sudo dpkg-reconfigure locales

También puede hacerlo en una línea de código. Ambos funcionan igual.

export LC_ALL="en_US.UTF-8" & export LC_CTYPE="en_US.UTF-8" & sudo dpkg-reconfigure locales

En los comandos anteriores, LC_ALL y LC_CTYPE se usan para establecer las variables de entorno, y el último comando sudo dpkg-reconfigure locales se usa para confirmar los cambios en el sistema.

Solucione el locale.Error: configuración de configuración regional no admitida desde su terminal

Si eso no funcionó para usted, podría intentar reinstalar locale desde su terminal.

sudo apt-get install locales -y

El comando anterior instalará locale. Ahora genere una lista de locales con el comando locale-gen.

sudo locale-gen en_US.UTF-8

Y por último, establecer la configuración de forma permanente al sistema.

sudo echo "LANG=en_US.UTF-8" > /etc/default/locale

Ejecutar los comandos anteriores puede pedirle que reinicie su máquina; debe permitir que se reinicie.

Incluya todos los idiomas disponibles en el módulo Configuración regional

Puede ejecutar el siguiente comando o el programa Python para verificar que la configuración regional dada existe en la lista de configuración regional.

$ locale -a

A continuación se muestra el programa Python para ver la lista de configuraciones regionales disponibles.

import locale

for language in locale.windows_locale.values():
    print(language, end=", ")

Producción :

af_ZA, sq_AL, gsw_FR, am_ET, de_DE, de_CH, ....., sah_RU, ii_CN, yo_NG, zu_ZA

El programa anterior recorrerá la lista disponible de idiomas locales e imprimirá cada uno como se muestra en la salida. Ahora puede elegir cualquier cosa disponible en la lista y ponerla en el programa para ver su salida, que debería funcionar correctamente.

Ejemplo de código:

import locale

print(str(locale.getlocale()))
locale.setlocale(locale.LC_ALL, "de_DE")

Producción :

('de_DE', 'UTF-8')
'de_DE'

¡Perfecto! Como puede ver, está funcionando perfectamente; hemos configurado el idioma local como de_DE ya que funciona sin problemas.

Recuerde que de_DE existe en la lista de idiomas locales, como se muestra en el ejemplo anterior, y representa el idioma alemán.

Zeeshan Afridi avatar Zeeshan Afridi avatar

Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.

LinkedIn

Artículo relacionado - Python Error