解决 Python shell 中 Delete/Backspace 键乱码问题
简述
进入 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。
转载自:http://blog.csdn.net/liang19890820
解决 Python shell 中 Delete/Backspace 键乱码问题的更多相关文章
- Python 交互模式中 Delete/Backspace 键乱码问题
进入 Python 交互模式,按下 Delete/Backspace 键,会出现 ^H 字符 解决方式: 1. 进到 Python 的Modules目录 [root@cyt-test Python-2 ...
- [转]Xshell在按delete,backspace键产生乱码(不可用)的解决方法
Xshell在按delete,backspace键产生乱码的解决方法 当我们用Xshell登录进入linux后,在普通模式下,对输入进行删除等操作没有问题. 而在运行中,按delete,backspa ...
- [转] linux下shell中使用上下键翻出历史命名时出现^[[A^[[A^[[A^[[B^[[B的问题解决,Linux使用退格键时出现^H解决方法
[From] https://www.zmrbk.com/post-2030.html https://blog.csdn.net/suifengshiyu/article/details/40952 ...
- 【转载】路径双反斜杠!!!Python IDLE或Python shell中切换路径 切换目录os.chdir("C:\\python37\\2019pythonshel37\\diedai")
Python IDLE或shell中切换路径在Python自带的编辑器IDLE中或者python shell中不能使用cd命令,那么跳到目标路径呢.方法是使用os包下的相关函数实现路径切换功能. im ...
- 解决python语言在cmd下中文乱码的问题
解决python语言在cmd下中文乱码的问题: a = "再见!"print (a.decode('utf-8').encode('gbk')) #解决在cmd下中文乱码的问题
- 【Oracle】解决oracle sqlplus 中上下左右backspace不能用
一. 解决输入 BACKSPACE 键变成 ^h 的问题 #su - oracle $stty erase ^h. 要永久生效,可以加入到用户环境配置文件.bash_profile中(vi .ba ...
- 并发编程时守护进程在pycharm与python shell中的运行结果不同
原代码如下 from multiprocessing import Process import time import random def task(name): print('%s is run ...
- Cygwin中解决vi编辑器方向键和Backspace键不好使、安装vim的方法
修改.virc文件(如果没有就创建)vi .virc 添加以下内容set nocpset backspace=start,indent,eol 保存退出:wq 如果是vim就修改.vimrc文件. 由 ...
- 简单解决python安装中的Unable to find vcvarsall.bat问题
使用python36安装python的murmurhash的时候遇到上述问题,原因是没有找到vcvarsall.bat.查找vcvarsall.bat的方法是定义在_msvccompiler.py文件 ...
随机推荐
- 【QT学习】信号和槽机制
QT中发射信号使用 emit 来完成. 类要使用信号和槽机制,必须从QObject或者QObject子类继承.必须在类的定义中加上 Q_OBJECT 宏. 信号和槽连接时,参数类型必须相同. 关键字大 ...
- Strict Mode (JavaScript)
摘要: ECMAScript5中引入的严格模式,通过让JavaScript运行环境对一些开发过程中最常见和不易发现的错误做出和当前不同的处理,来让开发者拥有一个”更好”的JavaScript语言.但目 ...
- 关于redis连接池
1.redis-py不需要显式使用连接池. 在幕后,redispy使用一个连接池来管理与Redis服务器的连接.默认情况下,每个Redis实例将依次创建自己的连接池.您可以通过将已创建的连接池实例传递 ...
- ssh跟ssm的区别
SSH跟SSM的区别 SSH指的是:spring+Struts+hibernate:而SSM指的是:spring +SpringMVC + MyBatis. 1.Spring是是开源框架,是轻量级的I ...
- Log4net用法(App.config配置)
配置文件 <configSections> <section name="log4net" type="log4net.Config.Log4NetCo ...
- Linux下 PHP 安装pecl_http方法
Linux下自带的PHP不支持HTTP库,需要自己安装 pecl_http组件安装步骤如下: 1. 组件安装 1.1 安装php-devel开发组件 yum install php-devel 1.2 ...
- C语言对文件的基本操作
在C语言中,对于文件的操作是利用FILE结构体进行的. 几个常用的操作文件函数简介 1:打开文件 FILE *fopen( const char *filename, const char *mode ...
- iOS App Transprot Security
随着iOS 9和OS X EI Capitan 的发布,苹果官方引入了应用通讯安全模式的概念.简而言之,应用通讯安全模式强制性要求应用需要使用最佳的安全通讯协议,比如TLS 1.2版本和前向保密技术. ...
- 【AI】图像识别-物体检测-百度AI-EasyDL-NodeJS
var https = require('https') var express = require('express'); var app = express(); var bodyParser = ...
- iOS开发-NSDictionary
判断一个字典中是否存在某个key,有两种方法: 方法一: if ([dictionary allKeys] containsObject: key]){ // cotains key operatio ...