Mac 10.14 上适用于 Python 3.6 的 Readline

Mac 10.14 上适用于 Python 3.6 的 Readline

我在 Mac 10.14 上安装了 Python 3.6.5。在 Python 解释器中,编辑/导航快捷键(例如箭头、^e、^a 等)不起作用,而是显示转义字符,例如:

Python 3.6.5(默认,2018 年 6 月 17 日,12:13:06)

darwin 上的 [GCC 4.2.1 兼容 Apple LLVM 9.1.0 (clang-902.0.39.2)]

输入“帮助”、“版权”、“信用”或“许可”以获取更多信息。

导入 blah ^[[A^[[C^[[D^A^E

pip拒绝安装readline并出现奇怪的错误;我安装了读行:它有效,但只有当我明确地这样做时:

导入 gnureadline

作为解释器中的第一个命令。这非常丑陋。

有没有更好的办法?

答案1

您可以使用Python启动环境变量指向导入库的点文件。此环境变量仅用于运行交互式提示,不会影响您的其他项目。

如果您还没有环境变量,则首先需要创建它。您应该能够使用 export 命令执行此操作,该命令会修改您当前的 shell 环境。为了确保您的 shell 环境始终知道这个新的环境变量,您需要将导出语句包含在您的~/.bash_profile、、或主目录中~/.bashrc~/.profile其他 shell 配置文件中。如果您不知道如何找到它们,请运行命令ls -a ~(这是一个提示)。搜索您的主目录。找到正确的文件后,将其添加到底部:

export PYTHONSTARTUP=/Users/yourusername/.pythonstartup

将其保存到文件中后,您现在将创建启动文件,您可以在其中包含导入语句。如上所述,该文件位于名为 的主目录中.pythonstartup。在该文件中包含您的导入语句:

import gnureadline

您可能还希望包含一个打印功能,以便让自己知道您始终gnureadline在交互式提示中进行导入:

print("gnureadline imported via .pythonstartup file in home dir")

完成所有操作后,您应该打开一个新的终端选项卡或新的终端实例。然后启动 Python 解释器,您应该会看到上述消息,并且能够使用您的库及其提供的快捷方式。

相关内容