如何為Python終端提供持久性歷史記錄
問(wèn)題
有沒(méi)有辦法告訴交互式Python shell在會(huì)話之間保留其執(zhí)行命令的歷史記錄?
當(dāng)會(huì)話正在運(yùn)行時(shí),在執(zhí)行命令之后,我可以向上箭頭并訪問(wèn)所述命令,我只是想知道是否有某種方法可以保存這些命令,直到下次我使用Python shell時(shí)。
這非常有用,因?yàn)槲野l(fā)現(xiàn)自己在會(huì)話中重用命令,這是我在上一個(gè)會(huì)話結(jié)束時(shí)使用的。
解決方案
當(dāng)然你可以用一個(gè)小的啟動(dòng)腳本。來(lái)自python教程中的交互式輸入編輯和歷史替換:
# Add auto-completion and a stored history file of commands to your Python # interactive interpreter. Requires Python 2.0+, readline. Autocomplete is # bound to the Esc key by default (you can change it - see readline docs). # # Store the file in ~/.pystartup, and set an environment variable to point # to it: "export PYTHONSTARTUP=~/.pystartup" in bash. import atexit import os import readline import rlcompleter historyPath = os.path.expanduser("~/.pyhistory") def save_history(historyPath=historyPath): import readline readline.write_history_file(historyPath) if os.path.exists(historyPath): readline.read_history_file(historyPath) atexit.register(save_history) del os, atexit, readline, rlcompleter, save_history, historyPath
從Python 3.4開(kāi)始,交互式解釋器支持開(kāi)箱即用的自動(dòng)完成和歷史記錄:
現(xiàn)在,在支持的系統(tǒng)上的交互式解釋器中默認(rèn)啟用Tab-completion readline。默認(rèn)情況下也會(huì)啟用歷史記錄,并將其寫入(并從中讀取)文件~/.python-history。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python+Selenium+Webdriver實(shí)現(xiàn)自動(dòng)執(zhí)行微軟獎(jiǎng)勵(lì)積分腳本
這篇文章主要為大家詳細(xì)介紹了如何利用Python+Selenium+Webdriver實(shí)現(xiàn)自動(dòng)執(zhí)行微軟獎(jiǎng)勵(lì)積分腳本,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2023-02-02Python實(shí)現(xiàn)批量提取PPT中的文字
這篇文章主要為大家詳細(xì)介紹了如何使用Python中的pptx和docx庫(kù)來(lái)將PPT中的文字提取到Word中,文中的示例代碼講解詳細(xì),有需要的可以參考下2024-03-03python輸入錯(cuò)誤密碼用戶鎖定實(shí)現(xiàn)方法
這篇文章主要介紹了python輸入錯(cuò)誤密碼用戶鎖定實(shí)現(xiàn)方法以及代碼實(shí)現(xiàn)過(guò)程,一起參考一下。2017-11-11Python中的五個(gè)神仙級(jí)函數(shù)一起來(lái)看看
這篇文章主要為大家介紹了Python中的五個(gè)神仙級(jí)函數(shù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-01-01centos6.5安裝python3.7.1之后無(wú)法使用pip的解決方案
今天小編就為大家分享一篇關(guān)于centos6.5安裝python3.7.1之后無(wú)法使用pip的解決方案,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-02-02Python光學(xué)仿真從Maxwell方程組到波動(dòng)方程矢量算法理解學(xué)習(xí)
這篇文章主要為大家介紹了Python光學(xué)仿真從Maxwell方程組到波動(dòng)方程算法的理解學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-10-10Python3實(shí)現(xiàn)的回文數(shù)判斷及羅馬數(shù)字轉(zhuǎn)整數(shù)算法示例
這篇文章主要介紹了Python3實(shí)現(xiàn)的回文數(shù)判斷及羅馬數(shù)字轉(zhuǎn)整數(shù)算法,涉及Python數(shù)值運(yùn)算、轉(zhuǎn)換等相關(guān)操作技巧,需要的朋友可以參考下2019-03-03