出力のキャッシュを使う

出力された結果は全て自動的にOutというグローバルディクショナリに格納されます。 これらを使うことにより、実行結果をまた他の計算に使うことができます。


In [42]: 6 + 8
Out[42]: 14

In [43]: Out[42] + 3
Out[43]: 17

ただし、print命令で出力したものはディクショナリOutに格納されません。


In [45]: print "6 plus 7 is %d" % (6+7)
6 plus 7 is 13

In [46]: Out[45]
---------------------------------------------------------------------------
KeyError

なお、「_」「__」「___」を使うと、直前の1つ前、2つ前、3つ前の結果が取り出せます。


In [15]: 4 + 6
Out[15]: 10

In [16]: _
Out[16]: 10

In [17]: "beta"
Out[17]: 'beta'

In [18]: 6 + 9
Out[18]: 15

In [19]: __
Out[19]: 'beta'

In [20]: ___ + "gamma"
Out[20]: 'betagamma'

「;」を文の最後に使うと結果の出力が抑制されます。このため、結果が長い文字列、 配列なので出力結果を出したくない、でもその結果を使ってさらに計算したい、という時に便利です。


In [21]: import string

In [22]: "python" * 50;

In [23]: string.count(_, "python")
Out[23]: 50