gpt4 book ai didi

python - "Up Arrow"OS X 和 code.InteractiveConsole 上 Python 的历史记录

转载 作者:行者123 更新时间:2023-11-28 16:25:54 25 4
gpt4 key购买 nike

我在我的一些 Python 脚本中使用以下技巧来进入交互式 Python REPL session :

import code; code.InteractiveConsole(locals=globals()).interact()

这通常在工作中的各种 RHEL 机器上运行良好,但在我的笔记本电脑 (OS X 10.11.4) 上它启动 REPL 似乎没有 readline 支持。你可以看到我得到了 ^[[A^C 垃圾字符。

My-MBP:~ complex$ cat repl.py 
a = 'alpha'
import code; code.InteractiveConsole(locals=globals()).interact()
b = 'beta'


My-MBP:~ complex$ python repl.py 
Python 2.7.10 (default, Oct 23 2015, 19:19:21)
[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.59.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> a
'alpha'
>>> ^[[A^C

如果我直接调用 python,REPL 中的向上箭头命令历史可以正常工作。

我尝试检查 globals() 以寻找一些线索,但在每种情况下它们似乎都是相同的。关于如何解决这个问题或在哪里寻找的任何想法?

编辑:并显示正确的行为:

My-MBP:~ complex$ python
Python 2.7.10 (default, Oct 23 2015, 19:19:21)
[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.59.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 'a'
'a'
>>> 'a'

最佳答案

只需在脚本或控制台中import readline

关于python - "Up Arrow"OS X 和 code.InteractiveConsole 上 Python 的历史记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36676629/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com