python - Mako、Babel 和字符串插值

标签 python mako python-babel

我正在尝试做这样的事情:

${_('你好 ${name},欢迎来到...', mapping=dict(name='${name}'))}

_() 是我的 Babel 翻译函数,第一个 ${name} 是我希望由 Babel 执行的字符串插值,第二个 ${name} 我想被 Mako 替换所以值是 Python 字典中的值:

这最终呈现为:

您好${name},欢迎来到...

不可取。问题似乎是因为第二个 ${name} 嵌套在另一个 ${} 中,所以它没有被评估。

我的目标:

你好 Ryan,欢迎来到...

我怎样才能做到这一点?

最佳答案

为什么不使用 Python 的字符串格式化?

${ _('Hello {name}, welcome to ...').format(name=name) }

关于python - Mako、Babel 和字符串插值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8177733/

相关文章:

python - 如何查看整个队列内容和自动队列推送

python - mustache 、通天塔和 gettext

python - 如何在单击按钮时更改 flask babel 的语言?

路径 : ImportError raised in mako template 中的 Python 模块

django - 在 jinja 模板中切换语言

python - 如何阻止 python 从字符串中读取正则表达式

python - 将多列转换为 Pandas 数据框中的字符串

python - 如何让用户从有限列表中选择输入?

python - 如何使用 Pylons/Mako 模板从独立的 python 脚本制作 HTML 电子邮件?