我的问题是,当我从 bash 运行通过 macport 或 Miniconda 获得的 python 版本时,python shell 中无法识别空格键。当我按空格键时,我只听到哔声。
使用不同的 shell 似乎并不能解决问题。
当我从源代码编译 Python 或使用系统中已安装的 python 时,不会发生这种情况。我正在运行 OSX 10.9.5。我编译了不同的 python 版本,它们工作正常,所以它似乎与我使用的 python 版本无关。
而且它只发生在 python/ipython 我从来没有在其他应用程序或我的 bash 中看到过这个问题。
这似乎与 Macport(和 Miniconda)python 的编译方式有关(可能是一些 libreadline 问题?)。我也尝试了 Miniconda 版本,这显示了同样的问题。
一些可能的信息是:
tha miniconda 版本有问题
otool -L ~/miniconda/bin/python2.7
/Users/alessandromanzotti/miniconda/bin/python2.7:
@loader_path/../lib/libpython2.7.dylib (compatibility version 2.7.0, current version 2.7.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.0.0)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 476.0.0)
/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
以及 macport python
otool -L /opt/local/bin/python
/opt/local/bin/python:
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/Python (compatibility version 2.7.0, current version 2.7.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
otool -L /opt/local/bin/python3.3
/opt/local/bin/python3.3:
/opt/local/Library/Frameworks/Python.framework/Versions/3.3/Python (compatibility version 3.3.0, current version 3.3.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
随系统安装的 osx python 可以工作
otool -L /usr/bin/python
/usr/bin/python:
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 855.14.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
以及我编译的2个版本
otool -L /Users/alessandromanzotti/Python2.7.8/bin/python2.7
/Users/alessandromanzotti/Python2.7.8/bin/python2.7:
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 855.17.0)
/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 2577.0.0)