python 本地化 local

时间:2024-01-09 18:45:32

locale 模块提供了 C 本地化( localization )函数的接口, 如 Example 8-1 所示. 同时提供相关函数, 实现基于当前 locale 设置的数字, 字符串转换. (而 int , float , 以及 string 模块中的相关转换函数不受 locale 设置的影 响.)

#! /usr/bin/env python
# encoding=utf8
import locale
print("locale", "=>", locale.setlocale(locale.LC_ALL, ""))
# integer formatting
value = 4711
print(locale.format_string("%d", value, 1), "==",)
print(locale.atoi(locale.format_string("%d", value, 1)))
# floating point
value = 47.11
print(locale.format_string("%f", value, 1), "==",)
print(locale.atof(locale.format_string("%f", value, 1)))
info = locale.localeconv()
print(info["int_curr_symbol"])

输出:

locale => Chinese (Simplified)_China.936
4,711 ==
4711
47.110000 ==
47.11
CNY