我想知道为什么在Python交互模式中,所有箭头键突然失效?
例如,当我按上箭头浏览命令历史记录时,会出现"^[[A",其他箭头键也是如此。
我不知道为什么会出现这种情况,在Snow Leopard操作系统中之前都能正常工作。有人知道如何解决吗?
非常感谢,
G
例如,当我按上箭头浏览命令历史记录时,会出现"^[[A",其他箭头键也是如此。
我不知道为什么会出现这种情况,在Snow Leopard操作系统中之前都能正常工作。有人知道如何解决吗?
非常感谢,
G
brew uninstall python brew uninstall readline brew install readline --universal brew install python这对我有用(运行OS X Mavericks 10.9.5)。
我终于让它起作用了。我只需要使用easy_install安装readline和cursors,然后回退和删除键就神奇地开始工作了。
sudo /opt/local/bin/easy_install-2.5 readline
apt-get install libncurses5-dev && pip install readline
变体在我的 Ubuntu(基于 Trusty)上运行良好。 - vaabsudo easy_install readline
- Pylinuxreadline
支持而引起的。如今,在OS X上的Python可以构建为使用GNU readline
库或Apple提供的editline
库(又称libedit
)。您可以使用以下两个命令来显示您正在使用哪个Python版本。如果这不能帮助您弄清楚发生了什么,请编辑您的问题以显示这些命令的输出。$ python -c 'import sys;print(sys.version);print(sys.executable)'
2.6.5 (r265:79063, Jul 15 2010, 01:53:46)
[GCC 4.2.1 (Apple Inc. build 5659)]
/opt/local/Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python
$ otool -L $(python -c 'import readline; print(readline.__file__)')
/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-dynload/readline.so:
/opt/local/lib/libreadline.6.1.dylib (compatibility version 6.0.0, current version 6.1.0)
/opt/local/lib/libncursesw.5.dylib (compatibility version 5.0.0, current version 5.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.0)
路径前缀/opt/local/
是MacPorts安装软件的默认位置,从otool
输出可以看出,此Python的readline
模块是动态链接到MacPorts安装的GNU readline
库。
libreadline
。我不知道为什么没有链接成功,因为 readline 已经安装好了。无论如何,port -f uninstall py27-readline; port install py27-readline
解决了这个问题。 - Celadareadline
支持引起的。如果您使用的是MacPorts,请尝试port install readline
,看看是否能解决问题。您还可以查看此页面获取更多解释。readline
,有些程序也不会使用它。您可以通过使用rlwrap
(port install rlwrap
)来强制启用它们。例如:rlwrap ocaml -init code.ml
将启动OCaml,读取code.ml,并启动带有readline支持的REPL)port install rlwrap
),然后使用命令rlwrap python
启动Python。有关传递参数等信息,请参阅rlwrap的man页面。 - Dannid
brew install python --readline --framework
,然后我必须执行以下操作:(1)将/usr/local/share/python
添加到我的PATH中。(2)pip3.4 install readline
。然后我输入了python3
,readline又可以工作了。 - Ben Kovitzbrew install python
安装了 Python,则可以按照以下步骤操作,brew 可能会用新版本替换 它 的版本。检查:which python
(报告 brew 版本在 /usr/local/bin/python),brew unlink python && which python
报告系统版本,brew link python
以恢复 brew 版本。这是非破坏性的。 - ptim