Jupyter-ipython-io-caching

提供:Dev Guides
移動先:案内検索

IPython-IOキャッシング

IPythonコンソールの入力および出力セルには、増分番号が付けられます。 この章では、PythonでのIOキャッシュについて詳しく見ていきましょう。

IPythonでは、入力は上矢印キーを使用して取得されます。 また、以前の入力はすべて保存され、取得できます。 変数 ii 、および '''' i は、常に前の3つの入力エントリを格納します。 さらに、 In および _in 変数は、すべての入力のリストを提供します。 明らかに _in [n] はn番目の入力セルから入力を取得します。 次のIPythonセッションは、この現象を理解するのに役立ちます-

In [1]: print ("Hello")
Hello

In [2]: 2+2
Out[2]: 4

In [3]: x = 10

In [4]: y = 2

In [5]: pow(x,y)
Out[5]: 100

In [6]: _iii, _ii, _i
Out[6]: ('x = 10', 'y = 2', 'pow(x,y)')

In [7]: In
Out[7]:
['',
   'print ("Hello")',
   '2+2',
   'x = 10',
   'y = 2',
   'pow(x,y)',
   '_iii, _ii, _i',
   'In'
]

In [8]: In[5] 9. IPython — IO
Out[8]: 'pow(x,y)'

In [9]: _ih
Out[9]:
['',
   'print ("Hello")',
   '2+2',
   'x = 10',
   'y = 2',
   'pow(x,y)',
   '_iii, _ii, _i',
   'In',
   'In[5]',
   '_ih'
]

In [11]: _ih[4]
Out[11]: 'y = 2'

In [12]: In[1:4]
Out[12]: ['print ("Hello")', '2+2', 'x=10']

同様に、シングル、ダブル、トリプルのアンダースコアは、前の3つの出力を保存する変数として機能します。 また、 Out および _oh は、セル番号のディクショナリオブジェクトと、アクションを実行するセルの出力を形成します(割り当てステートメントは含まれません)。 特定の出力セルの内容を取得するには、 Out [n] または _oh [n] を使用します。 スライスを使用して、範囲内の出力セルを取得することもできます。

In [1]: print ("Hello")
Hello

In [2]: 2+2
Out[2]: 4

In [3]: x = 10

In [4]: y = 3

In [5]: pow(x,y)
Out[5]: 1000

In [6]: ___, __, _
Out[6]: ('', 4, 1000)

In [7]: Out
Out[7]: {2: 4, 5: 1000, 6: ('', 4, 1000)}

In [8]: _oh
Out[8]: {2: 4, 5: 1000, 6: ('', 4, 1000)}

In [9]: _5
Out[9]: 1000

In [10]: Out[6]
Out[10]: ('', 4, 1000)