Django使用下划线作为运算符总是让我感到奇怪,因为下划线通常用于赋值给你以后不想引用的变量。例如。
_, file_name = os.path.split(file_path)
这是否意味着您不能将不需要的变量分配给同一名称空间中的_
,因为您要使用_("column_name")
表示法?
_
只是另一个名字,perfectly valid即使它看起来很奇怪。就像任何其他名称一样,重新绑定它将使旧引用不可用。
我认为你将_
变量与Django的from django.utils.translation import gettext as _
混淆,你使用的第一个_
是一个常用的常规变量。 Django还通常将gettext作为_
导入以显示翻译文本,例如:
from django.http import HttpResponse
from django.utils.translation import gettext as _
def my_view(request):
output = _("Welcome to my site.")
return HttpResponse(output)
下划线字符(_)用于表示Python的交互式shell和doctest测试中的“先前结果”。安装全局_()函数会导致干扰。显式导入gettext()为_()可以避免此问题。