从时区获取语言环境 -python、django、pytz

Get locale from timezone -python, django, pytz

是否可以从时区获取语言环境?

喜欢 'en-US' 来自时区 'America/Chicago'。

pytz.country_timezones是你的朋友。

您可以在此处找到按国家/地区分类的语言列表: http://download.geonames.org/export/dump/countryInfo.txt

您可以使用 country_timezones 将 django "America/Chicago" 样式的 timzeones 映射到国家代码,然后将国家代码映射到 geonames 中的语言列表。

如果这看起来很痛苦,我已经为您完成了。 https://github.com/georgemitchell/Whosebug/tree/master/timezone_to_locale

查看timezone_to_locale.py了解详情。

>>> from timezone_to_locale import locale_by_timezone
>>> locale_by_timezone["America/Chicago"]
['en-US', 'es-US', 'haw', 'fr']

如您所见,它甚至解决了凯文提出的难题。