Dalam banyak sistem matematika simbolis, seperti Matlab atau Mathematica, Anda dapat menggunakan variabel seperti Ansatau %untuk mengambil nilai yang dihitung terakhir. Apakah ada fasilitas serupa di shell Python?
Dalam banyak sistem matematika simbolis, seperti Matlab atau Mathematica, Anda dapat menggunakan variabel seperti Ansatau %untuk mengambil nilai yang dihitung terakhir. Apakah ada fasilitas serupa di shell Python?
Jawaban:
Menggarisbawahi.
>>> 5+5
10
>>> _
10
>>> _ + 5
15
>>> _
15
_telah ditetapkan sebelumnya. Ini tidak biasa, karena simbol ini juga digunakan untuk variabel throwaway (lihat stackoverflow.com/questions/5893163/… )
Sebagai catatan, ipython mengambil langkah ini lebih jauh dan Anda dapat mengakses setiap hasil dengan _ dan nilai numeriknya
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
Dan dimungkinkan untuk mengedit rentang baris dengan% ed makro juga:
In [1]: def foo():
...: print "bar"
...:
...:
In [2]: foo()
bar
In [3]: %ed 1-2
__dan ___kebetulan juga di 1.2.1.
IPython memungkinkan Anda melampaui underscore tunggal _dengan double ( __) dan triple underscore ( ___), mengembalikan hasil dari perintah kedua dan ketiga ke terakhir.
Atau, Anda juga dapat menggunakan Out[n], di mana njumlah input yang menghasilkan output:
In [64]: 1+1
Out[64]: 2
...
In [155]: Out[64] + 3
Out[155]: 5
Untuk info lebih lanjut, lihat https://jakevdp.github.io/PythonDataScienceHandbook/01.04-input-output-history.html .