Python代码国际化

本文介绍了如何实现Python代码的国际化,以FastAPI为例,在中间件中读取请求头的语言设置,并利用poedit工具处理需要翻译的中文。通过设置翻译属性,提取源代码中的字符串,预翻译并保存文件,将翻译后的文件放在项目的locale目录下对应语言路径。
摘要由CSDN通过智能技术生成

标题python代码国际化

需要工具:
poedit
代码:

import gettext


def change_lang(lang: str = 'zh'):
    global lang_obj
    if lang == 'en':
        lang_en = gettext.translation('en', 'locale', languages=['LANG'])
        lang_en.install()
        lang_obj = lang_en.gettext
    elif lang == 'ja':
        lang_jp = gettext.translation('ja', 'locale', languages=['LANG'])
        lang_jp.install()
        lang_obj = lang_jp.gettext
    elif lang == 'zh-hans':
        lang_jp = gettext.translation('zh_TW', 'locale', languages=['LANG'])
        lang_jp.install()
        lang_obj = lang_jp.gettext
    else:
        lang_obj = gettext.gettext

    return lang_obj


def _(word: str=""):
    global lang_obj
    return lang_obj(word)


lang_obj = chang
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值