В чем смысл _, в python? [Дубликат]

Примечание: не используйте это в реальном коде.

. В качестве альтернативы регулярным выражениям для простой литеральной строки вы можете использовать

str = "Test abc test test abc test...".split("abc").join("");

. Общий шаблон

str.split(search).join(replacement)

В некоторых случаях это было быстрее, чем при использовании replaceAll и регулярного выражения, но в современных браузерах это, похоже, не так. Таким образом, это действительно должно быть использовано только как быстрый хак, чтобы избежать необходимости избегать регулярного выражения, а не реального кода.

459
задан gsamaras 11 May 2016 в 09:16
поделиться

4 ответа

_ имеет 3 основных обычных использования в Python:

  1. Чтобы удерживать результат последнего выполненного выражения (/ statement) в сеансе интерактивного интерпретатора. Этот прецедент был установлен стандартным интерпретатором CPython, а другие интерпретаторы последовали его примеру
  2. . Для поиска перевода в i18n (см., Например, документацию gettext ), как в коде типа: raise forms.ValidationError(_("Please enter a correct username"))
  3. Как общее имя переменной «throwaway», чтобы указать, что часть результата функции умышленно игнорируется, как в коде типа: label, has_label, _ = text.partition(':')

Последние две цели могут конфликтовать, поэтому необходимо избегать использования _ в качестве альтернативной переменной в любом кодовом блоке, который также использует его для перевода i18n (многие люди предпочитают двойное подчеркивание, __, как свою переменную throwaway для именно по этой причине).

604
ответ дан ncoghlan 25 August 2018 в 04:38
поделиться

Это просто имя переменной, и в python принято использовать _ для переменных throwaway. Это просто указывает, что переменная цикла фактически не используется.

161
ответ дан gsteff 25 August 2018 в 04:38
поделиться

Подчеркивание _ считается переменной «I do not Care» или «Throwaway» в Python

  • Интерпретатор python сохраняет последнее значение выражения специальной переменной с именем _ ,
    >>> 10 
    10
    
    >>> _ 
    10
    
    >>> _ * 3 
    30
    
  • Подчеркивание _ также используется для игнорирования конкретных значений. Если вам не нужны конкретные значения или значения не используются, просто назначьте значения для подчеркивания. Игнорировать значение при распаковке
    x, _, y = (1, 2, 3)
    
    >>> x
    1
    
    >>> y 
    3
    
    Игнорировать индекс
    for _ in range(10):     
        do_something()
    
31
ответ дан Marco Bonelli 25 August 2018 в 04:38
поделиться

Существует 5 случаев использования подчеркивания в Python.

  1. Для хранения значения последнего выражения в интерпретаторе.
  2. Для игнорирования конкретных значений. (так называемое «мне все равно»)
  3. Чтобы указать специальные значения и функции для имени vartiables или функций.
  4. Использовать как «Интернационализация (i18n)» или « Локализация (l10n) '.
  5. Отделить цифры числа буквенного значения.

Здесь - хорошая статья с примерами mingrammer .

7
ответ дан Reck 25 August 2018 в 04:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: