我在Mac上使用Anaconda,想知道是否有方法可以清除Python命令历史记录。具体来说,在终端中调用python
后,我希望能够清除之前输入的所有内容。
我在Mac上使用Anaconda,想知道是否有方法可以清除Python命令历史记录。具体来说,在终端中调用python
后,我希望能够清除之前输入的所有内容。
假设你想要清除Python在按上下箭头键时经历的命令历史记录,那么这个历史记录是由GNU readline库或libedit管理的,具体取决于你的系统。Python readline
模块是底层库的Python级接口(即使该库是libedit),在底层库支持它的系统上,你可以使用readline.clear_history
来清除历史记录:
>>> import readline
>>> readline.clear_history()
我不知道您的 Mac 上的库是否支持它。
rm $HOME/.python_history*
来进行清除。 - Scotrraaj Gopal如果你的系统没有使用readline
,要删除所有Python命令历史记录,只需删除位于~/.python_history
的历史文件即可。
你可以通过以下命令查看历史文件的完整路径:
python -c "import os; print(os.path.join(os.path.expanduser('~'), '.python_history'))"
。
在Windows上,历史文件位于%userprofile%\.python_history
(例如,'C:\Users\<user>\.python_history'
)。
如果你正在使用Windows系统,而且无论你找了什么方法都无法清除终端存储的命令历史记录,那么以下方法可能会帮到你:
找到并删除:%userprofile%\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadline\ConsoleHost_history.txt
这将会删除你的整个终端历史记录。
import os
os.system('cls')
这将仅清除此交互式会话中的Python历史记录,而不是以前的历史记录。
Import os
os.system('clear')
如果你正在使用Windows操作系统:
Import os
os.system('CLS')
转义序列?
print(chr(27) + "[2J")
或者
import os
os.system('cls' if os.name == 'nt' else 'clear')
import subprocess
subprocess.call('reset')