我正在使用.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历史记录?是否有一种方法可以配置readline以在使用-i或-ic时使历史记录可用(并且可以保存)?
解决方法:
我的python2.6的手册页说
-i … It does not read the $PYTHONSTARTUP file.
由于这是您自定义readline行为(http://docs.python.org/py3k/library/readline.html#example)的方法,因此在使用该选项时它不会生效.