在python中映射一组值

时间:2011-09-28 03:40:36

标签: python

执行以下操作的最佳方法是什么:

if lang=="en-US":
    chapter="chapter"
if lang=="fr-FR":
    chapter="chapitre"
# etc.

基本上我正在寻找一个可以做类似的映射:

lang = ['en-US', 'fr-FR', ...] --> chapter = ['chapter', 'chapitre', ...]

我将如何做到这一点?谢谢。

3 个答案:

答案 0 :(得分:7)

我总是使用字典。

langs = {
  "en-US" : "chapter",
  "fr-FR" : "chapitre"
}

test = langs['en-US']

但是对于翻译,您还应该考虑gettext

答案 1 :(得分:3)

Dictionaries对此有好处。

>>> chapter = {
...     "en-US": "chapter",
...     "fr-FR": "chapitre",
...     # ...
... }
>>> chapter['en-US']
'chapter'
>>> chapter['fr-FR']
'chapitre'

答案 2 :(得分:2)

>>> chapter = {
...     "en-US": "chapter",
...     "fr-FR": "chapitre",
...     # ...
... }
>>> chapter.keys(), chapter.values()
... (['en-US', 'fr-FR'], ['chapter', 'chapitre'])

如果您正在寻找翻译,那么最佳选择是gettext