数据库
首页 > 数据库> > Python:不使用setlocale()访问Posix的语言环境数据库

Python:不使用setlocale()访问Posix的语言环境数据库

作者:互联网

该设置是Ubuntu服务器系统上基于Django的网站,在/usr/share / i18n / locales中包含许多有用的信息.

问题:是否可以在不使用Python的locale.setlocale()的情况下访问此智慧库?

原因:The docs说,那是

>调用setlocale()非常昂贵,并且
>影响整个应用程序.

但就我而言,我有一个法文网站(Django会自动处理语言环境的设置),我只想在de_AT语言环境中显示January的名称,或者像在俄罗斯一样格式化数字.

解决方法:

实现这一目标的魔术库称为Babel.我想要什么:

之前

import locale
setlocale(LC_ALL, 'de')
x = locale.format('%.2f', 123)
setlocale(LC_ALL, '')

from babel.numbers import format_decimal
x = format_decimal(123, format='#0.00', locale='de')

…并具有良好的免费Djang集成.

标签:locale,posix,python,django,internationalization
来源: https://codeday.me/bug/20191210/2100170.html