Во многих символических математических системах, таких как Matlab или Mathematica, вы можете использовать переменную типа Ans
или %
для извлечения последнего вычисленного значения. Есть ли подобное средство в оболочке Python?
Получить последний результат в интерактивной оболочке Python
Ответ 1
Подчеркивание.
>>> 5+5
10
>>> _
10
>>> _ + 5
15
>>> _
15
Ответ 2
Только для записи ipython делает этот шаг дальше, и вы можете получить доступ к каждому результату с помощью _ и его числового значения
In [1]: 10
Out[1]: 10
In [2]: 32
Out[2]: 32
In [3]: _
Out[3]: 32
In [4]: _1
Out[4]: 10
In [5]: _2
Out[5]: 32
In [6]: _1 + _2
Out[6]: 42
In [7]: _6
Out[7]: 42
И также можно редактировать диапазоны строк с помощью макроса% ed:
In [1]: def foo():
...: print "bar"
...:
...:
In [2]: foo()
bar
In [3]: %ed 1-2
Ответ 3
IPython позволяет вам выйти за пределы одиночного подчеркивания _
с двойным (__
) и тройным подчеркиванием (___
), возвращая результаты команд second- и от третьего до последнего.
В качестве альтернативы вы также можете использовать Out[n]
, где n
- номер входа, который сгенерировал вывод:
In [64]: 1+1
Out[64]: 2
...
In [155]: Out[64] + 3
Out[155]: 5
Для получения дополнительной информации см. Https://jakevdp.github.io/PythonDataScienceHandbook/01.04-input-output-history.html.