Какова роль подчеркивания в функции печати в Python? - PullRequest
1 голос
/ 13 января 2020

Случайно я напечатал что-то вроде:

print(var, __)

Я не могу понять, что производится. Кажется, что вы можете захватить элементы истории в зависимости от того, как долго _____. Я использую Pycharm.

Ответы [ 2 ]

4 голосов
/ 13 января 2020

__ - это имя переменной.

_ и ___ - это разные имена переменных.

print(var, __) печатает содержимое var, за которым следует содержимое __.

В зависимости от контекста, _ / __ / ___ может быть предварительно заполнено. В ноутбуке Jupyter это 3 предыдущих результата ячейки.

3 голосов
/ 13 января 2020

Вероятно, вы видите кэширование вывода I Python:

Для вывода, возвращаемого из действий, существует система, аналогичная кэшу ввода, но использующая _ вместо _i. Кешируются только те действия, которые дают результат (например, НЕ присваивания). Если вы знакомы с Mathematica, переменные IPython _ ведут себя точно так же, как переменные% Mathematica.

Всегда существуют следующие переменные:

    [_] (a single underscore): stores previous output, like Python’s default interpreter.
    [__] (two underscores): next previous.
    [___] (three underscores): next-next previous.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...