解決 Python shell 中 Delete/Backspace 鍵亂碼問題
阿新 • • 發佈:2019-02-14
簡述
進入 Python shell,按下 Delete/Backspace 鍵,會出現 ^H
字元。命令輸入錯誤後只能從頭開始,無法刪除,讓人很頭疼。為了便於後期使用,分享一個一勞永逸的方式。
|
基本現象
進入 Python shell,按下 Delete/Backspace 鍵:
Python 3.5.2 (default, Mar 29 2017, 11:05:07)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>> import ^H^H^H^H^H^H
會出現 ^H
字元,無法正常刪除,用起來很不方便。
解決方式
方式一:安裝 readline 相關模組
查閱文件,發現是因為 readline 相關模組沒有安裝的原因。readline 是 bash shell 用的庫,包含許多使用功能,例如:命令列自動補全。
# yum install readline readline-devel
安裝完成後,需要再重新編譯安裝 Python:
# make
# make install
大功告成,這樣以後用起來就方便多了。
方式二:使用 Python 自帶的 readline 模組
如果還是不行,可以嘗試使用 Python 自帶的 readline 模組。切換至 Modules 目錄,修改 Setup 檔案:
# cd Modules/
# vi Setup
取消檔案中 readline 部分對應的註釋符:
#readline readline.c -lreadline -ltermcap
然後,再重新編譯安裝 Python。