的_
是一个可调用(函数的名称,可调用对象)。通常用于该gettext
函数,例如在Django中:
from django.utils.translation import ugettext as _
print _("Hello!") # Will print Hello! if the current language is English
# "Bonjour !" in French
# ¡Holà! in Spanish, etc.
正如文档所说:
Python的标准库gettext模块_()
作为的别名安装到全局名称空间中gettext()
。在Django中,出于以下两个原因,我们选择不遵循此做法:
[…]
下划线字符(_
)用于表示Python的交互式shell和doctest测试中的“先前的结果”。安装全局_()
功能会造成干扰。显式导入ugettext()
as_()
可以避免此问题。
即使是约定,您的代码中也 。但请放心,99.9%的时间_
是gettext
:)的别名