PythonのREPLで「_」が意外と優秀な話

PythonのREPLで_に意外と便利な使い道があったことを発見したのでそのメモ

_の使い道

pythonでは_を変数として利用できます。

一般的には、値を_に入れることで、その値を使わないことを明示するときに利用されることが多いです。

例えばタプルのうちの一部だけを利用するケースなど。

t = (1, 2, 3)
(a, _, _) = t

直前の式の実行結果が取れる

pythonのREPL(対話実行環境)で_を利用すると、直前の式の実行結果が取得できます。

>>> 1 + 1
2
>>> _
2

こんな具合に直前で 1 + 1を実行したので実行結果の2_に入っています。

ただし、_に値を代入してしまうと以降は直前の式の実行結果を取得できなくなってしまいます。

さいごに

ちょっとした計算をpythonにやらせたときに、直前の計算結果を変数に入れていなくて再利用しづらくて面倒だと思うことがあったので、便利な発見でした!

以上、PythonのREPLで「_」が意外と優秀な話でした。