代码之家  ›  专栏  ›  技术社区  ›  rudimenter

未知的python语法

  •  2
  • rudimenter  · 技术社区  · 15 年前

    我在python文件中发现了以下语法:

     units = (
            (100, 1 << 30, _('%.0f GB')),
            (10, 1 << 30, _('%.1f GB')),
            (1, 1 << 30, _('%.2f GB')),
            (100, 1 << 20, _('%.0f MB')),
            (10, 1 << 20, _('%.1f MB')),
            (1, 1 << 20, _('%.2f MB')),
            (100, 1 << 10, _('%.0f KB')),
            (10, 1 << 10, _('%.1f KB')),
            (1, 1 << 10, _('%.2f KB')),
            (1, 1, _('%.0f bytes')),
            )
    

    有人知道这个下划线代表什么吗?

    事先谢谢。

    5 回复  |  直到 6 年前
        1
  •  4
  •   Achim    15 年前

    下划线是一个有效的变量名,因此您必须查看示例代码的上下文。显然,下划线是在其他地方定义的方法。通常用于翻译或类似的事情。

        2
  •  3
  •   Ralph    15 年前

    在文件中进一步查找。幸运的是,你会发现这样一个声明:

    from Language import _
    

    下划线通常用于i18n。

        3
  •  3
  •   avpaderno    6 年前

    如其他答案所述, _ 是python函数的有效名称。你很可能会发现 _() 在一些I18N包中用作翻译功能。

        4
  •  2
  •   Amandasaurus    15 年前

    正如其他人所提到的, _ 是一个函数。通常的惯例是用于本地化和国际化

        5
  •  0
  •   Htechno    15 年前

    函数通常别名为gettext get函数: http://docs.python.org/library/gettext.html