在像交互式python shell这样的shell中,你通常可以使用箭头键在当前行中移动或获取以前的命令(使用向上箭头)等.
但是在我进入另一台机器并从python那里开始之后,我会得到以下会话:
>>> import os
>>> ^[[A
Run Code Online (Sandbox Code Playgroud)
最后一个角色来自向上箭头.或者,使用左箭头:
>>> impor^[[D
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?
在常规bash中,箭头键工作正常.奇怪的行为只是在交互式python(或perl等)shell中.
我从源代码安装了python 3.6.因为向上箭头键不起作用,我通过'pip install readline'安装了readline模块
但在此之后,我的python控制台崩溃了.
*** glibc detected *** python: free(): invalid pointer: 0xb7506578 ***
======= Backtrace: =========
/lib/libc.so.6(+0x70e31)[0xce8e31]
python(PyMem_RawFree+0x1b)[0x805faab]
python(PyOS_Readline+0xe0)[0x81c87a0]
python[0x8083924]
python[0x8084007]
python(PyTokenizer_Get+0x17)[0x8084d17]
python[0x80817fc]
python(PyParser_ASTFromFileObject+0x91)[0x8067231]
python(PyRun_InteractiveOneObject+0x111)[0x8068231]
python(PyRun_InteractiveLoopFlags+0x60)[0x80685c0]
python(PyRun_AnyFileExFlags+0x4b)[0x806870b]
python(Py_Main+0xfae)[0x80782ce]
python(main+0x186)[0x805f716]
/lib/libc.so.6(__libc_start_main+0xe6)[0xc8ed26]
python[0x805f4f1]
======= Memory map: ========
0033e000-00366000 r-xp 00000000 fd:00 12964 /lib/libm-2.12.so
00366000-00367000 r--p 00027000 fd:00 12964 /lib/libm-2.12.so
00367000-00368000 rw-p 00028000 fd:00 12964 /lib/libm-2.12.so
00463000-00464000 r-xp 00000000 00:00 0 [vdso]
0048e000-004b0000 r-xp 00000000 fd:00 4544 /lib/libncurses.so.5.7
004b0000-004b1000 rw-p 00021000 fd:00 4544 /lib/libncurses.so.5.7
004e4000-004fb000 r-xp 00000000 fd:00 4246 /lib/libpthread-2.12.so
004fb000-004fc000 …Run Code Online (Sandbox Code Playgroud)