擅长:python、mysql、java
<p>你给自己提供的答案是不必要的。消息上下文不适用于此类用途</p>
<p>你为什么不用这个:</p>
<pre><code>portfolio_reviewed = gettext('Reviewed portfolio')
</code></pre>
<p>将其与您的版本进行比较:</p>
<pre><code>portfolio_reviewed = pgettext('portfolio', 'Reviewed')
</code></pre>
<p>它甚至更短。它还有一个额外的好处,翻译人员不需要任何关于上下文<code>portfolio</code>在这里被使用(读:滥用)的额外信息</p>
<p>为什么是黑客?您的解决方案表明您正在组装/连接翻译,这是一个众所周知的解决问题的方法。其他语言可能也将需要在一个句子中使用不同的语序</p>
<p>你的黑客可能适用于芬兰语,因为它只有一种语法性别,但可能不适用于德语或俄语,只有三种。在国际化软件时,您应该避免对其他语言的语法进行任何假设</p>