你如何看待交互式Python中的整个命令历史?
我正在使用Mac OS X上的默认python解释器,而我Cmd + K(清除)了我以前的命令。 我可以使用箭头键逐个浏览它们。 但有没有类似于bash shell中的–history选项的选项,它显示了你迄今为止input的所有命令?
使用readline.get_current_history_length()
获取长度,使用readline.get_current_history_length()
查看每个长度。
打印整个历史的代码(仅供将来参考):
import readline for i in range(readline.get_current_history_length()): print readline.get_history_item(i + 1)
编辑:注意get_history_item()
被索引从1到n。
用python 3解释器写入历史
~/.python_history
由于上述只适用于python 2.x for python 3.x(特别是3.5)是相似的,但稍作修改:
import readline for i in range(readline.get_current_history_length()): print (readline.get_history_item(i + 1))
注意extra()
(使用shell脚本来parsing.python_history或使用python来修改上面的代码是个人品味和情况imho的问题)
这应该给你打印出来的命令在不同的行:
导入readline; map(lambda p:print(readline.get_history_item(p)),map(lambda p:p,range(readline.get_current_history_length())))