我使用.pythonsetup
文件以readline module docs中描述的方式启用readline历史记录。通常,以前交互式解释器会话的历史记录在我启动新会话时可用。
% python
>>> # history available...
但是,在使用-i或-c时,过去的历史记录不可用。这并不是说readline被禁用:历史记录可用于当前会话,但该历史记录不会保存到历史记录文件中。
% python -i myscript.py
>>> # previous history not available
% python -i -c "x = 1"
>>> # previous history not available
此行为在Python 2.6、2.7和3.2中是一致的。
有人知道为什么在使用-i或-ic时会禁用以前的读取历史记录吗?有没有办法将readline配置为在使用-i或-ic时使历史可用(并可保存)?
发布于 2011-08-03 11:48:44
我的python2.6
的手册页上写着
-i ...它不读取$PYTHONSTARTUP文件。
因为这是您自定义readline行为( http://docs.python.org/py3k/library/readline.html#example )的方式,所以当您使用该选项时,它不会生效。
发布于 2011-08-03 11:44:40
如果使用IPython,则可以获得此行为
ipython -i myscript.py
就我个人而言,无论如何我都会推荐使用它,原因很多,它比默认的解释器更好。
https://stackoverflow.com/questions/6921365
复制相似问题