Python 中 Locale.Error: Unsupported Locale Setting 错误
Python 是一种多样化且功能强大的编程语言,具有许多库和框架,可让您高效地完成所需的任务。
在照顾开发者方面,Python 永远是最重要的。 这是帮助开发人员在没有任何文化障碍的情况下推广软件的著名模块之一,该模块就是 Locale。
什么是 Python 中的语言环境模块
如前所述,开发语言环境模块是为了方便开发人员处理软件中的某些文化问题。
因此,让我们探索 Locale 模块并尝试修复最常见的错误之一,locale.Error: unsupported locale setting 当您不熟悉此模块时会遇到。
在深入了解错误的细节之前,让我们看看 locale 模块是什么,如何导入它,以及这个模块还需要什么。
代码示例:
import locale
# get the current locale
print(locale.getlocale())
输出:
('English_United States', '1252')
在我们的案例中,我们将 English_United States.1252 作为首选语言环境; 基本上,这取决于设置; 您的机器上可能有不同的首选语言环境。
但是您可以借助 setlocale()
函数从可用列表中将默认语言环境更改为您的首选语言环境。
locale.setlocale(locale.LC_ALL, 'German')
输出:
'German_Germany.1252'
什么是Python中 locale.Error: unsupported locale setting
在 Python 中,当您不熟悉 locale 模块时,您可能会在某些时候遇到 locale.Error: unsupported locale setting 。 以及您没有正确安装语言环境模块或您提供的参数存在问题的原因。
让我们看一个例子来更好地理解 locale.Error: unsupported locale setting。
import locale
print(str(locale.getlocale()))
locale.setlocale(locale.LC_ALL, 'de_DE')
输出:
locale.Error: unsupported locale setting
这个错误背后的核心原因是你的环境变量 LC_ALL 丢失或无效。 在这种情况下,缺少 de_DE,因此您会收到错误 locale.Error: unsupported locale setting。
如何修复Python 中 locale.Error: unsupported locale setting
正如我们在上面的代码中看到的,它导致了区域设置错误,原因是我们缺少环境变量,或者提供的环境变量无效。 要解决这个问题,有多种解决方案; 每个都一一解释,因此请务必检查每个以修复 locale.Error: unsupported locale setting。
让我们从设置环境变量开始。 为此,请转到您的终端并键入以下命令。
使用 export 命令修复 locale.Error: unsupported locale setting
export LC_ALL="en_US.UTF-8"
export LC_CTYPE="en_US.UTF-8"
sudo dpkg-reconfigure locales
我们也可以在一行代码中完成。 两者的工作原理相同。
export LC_ALL="en_US.UTF-8" & export LC_CTYPE="en_US.UTF-8" & sudo dpkg-reconfigure locales
在以上命令中,LC_ALL 和 LC_CTYPE 用于设置环境变量,最后一个命令 sudo dpkg-reconfigure locales
用于将更改提交到系统中。
从终端中修复 locale.Error: unsupported locale setting
如果这对你不起作用,你可以尝试从你的终端重新安装语言环境。
sudo apt-get install locales -y
上面的命令将安装语言环境。 现在使用 locale-gen 命令生成语言环境列表。
sudo locale-gen en_US.UTF-8
最后,将配置永久设置为系统。
sudo echo "LANG=en_US.UTF-8" > /etc/default/locale
运行上述命令可能会要求您重新启动机器; 你应该让它重新启动。
在语言环境模块中获取所有可用语言
您可以运行以下命令或 Python 程序来验证给定的语言环境是否存在于语言环境列表中。
$ locale -a
下面是用于查看可用语言环境列表的 Python 程序。
import locale
for language in locale.windows_locale.values():
print(language, end =", ")
输出:
af_ZA, sq_AL, gsw_FR, am_ET, de_DE, de_CH, ....., sah_RU, ii_CN, yo_NG, zu_ZA
上面的程序将循环遍历可用的区域设置语言列表,并按输出中所示打印每种语言。 现在您可以选择列表中的任何可用内容并将其放入程序中以查看其输出,它应该可以正常工作。
代码示例:
import locale
print(str(locale.getlocale()))
locale.setlocale(locale.LC_ALL, 'de_DE')
输出:
('de_DE', 'UTF-8')
'de_DE'
完美的! 如您所见,它运行良好; 我们已将语言环境语言设置为 de_DE,因为它运行流畅。
请记住 de_DE 存在于本地语言列表中,如上例所示,它代表德语。
相关文章
Python 中错误 ImportError: No Module Named Sklearn
发布时间:2023/05/31 浏览次数:194 分类:Python
-
在 Python 中,sklearn 被用作机器学习工具,用于在回归、集群等方面创建程序。很多时候,导入它会抛出错误—— No module named sklearn。Python中错误ImportError: No module named sklearn的原因
Python 中 ImportError: Missing Required Dependencies Numpy 错误
发布时间:2023/05/30 浏览次数:113 分类:Python
-
在本文中,我们将了解 ImportError: Missing required dependencies numpy,导致 ImportError 的原因以及如何使用命令行界面 (CLI) 解决它。
修复 Python 中的 TypeError: Can Only Join an Iterable 错误
发布时间:2023/05/30 浏览次数:172 分类:Python
-
本篇文章将讨论Python中的 TypeError: can only join an iterable 错误。修复Python中 TypeError: can only join an iterable 错误。由于它是 TypeError,我们可以得出结论,正在对给定对象执行不受支持的操作。
修复 Python 错误 SyntaxError: Invalid Token
发布时间:2023/05/30 浏览次数:85 分类:Python
-
在本文中,我们将了解什么是 SyntaxError: invalid token Python 错误以及如何修复它。 令牌是语句的重要组成部分,组合这些令牌可为 Python 编译器提供有意义的模式。
修复 Python 错误 SyntaxError: 'break' Outside Loop
发布时间:2023/05/30 浏览次数:93 分类:Python
-
本篇文章将讨论 Python 的 SyntaxError: 'break' outside loop 错误。循环和条件语句是任何编程语言不可或缺的一部分。修复 Python 中的 SyntaxError: 'break' outside loop 错误
修复 Python 错误 AttributeError: 'numpy.ndarray' Object Has No Attribute 'App
发布时间:2023/05/30 浏览次数:152 分类:Python
-
NumPy ndarray 没有这种称为 append 的方法。 ndarray 代表一个 n 维数组。 我们可以从 NumPy 对象调用它,而不是在 ndarray 上调用 append() 。
Python 中错误 AttributeError: 'NoneType' Object Has No Attribute 'Text'
发布时间:2023/05/30 浏览次数:191 分类:Python
-
当有一个 None 对象,并且您试图调用该对象的任何方法时,就会发生 AttributeError, 'NoneType' Object Has No Attribute 'Text' 错误。 在这里,对象是 None,你想调用方法文本。
Python 错误 TypeError: Function Object Is Not Subscriptable
发布时间:2023/05/30 浏览次数:142 分类:Python
-
我们将在本文中了解为什么会出现 TypeError: 'function' object is not subscriptable,以及我们如何在 Python 中修复此错误。
修复 Python 中OverflowError: Math Range Error错误
发布时间:2023/05/30 浏览次数:145 分类:Python
-
修复 Python 中的 OverflowError: math range 错误。OverflowError 表示引发的错误是由于超出了某些数据类型的范围。