Python (Win)readline和tab补全的安装方法

yipeiwu_com7年前Python基础

最近开始学Python,想直接通过命令行的方式进行学习。

奈何没有Tab补全,操作实在麻烦,网上各种百度后无果(x64系统,x86的可以直接下载网上各种编译好的包)

最后自己百度+加上自己的摸索,找到了在64位系统下轻松安装readline和tab补全的方法

一、安装readline

cmd命令行,就会自动安装readline模块

python -m pip install pyreadline

二、编写tab.py

文件保存在..\Python\Lib\tab.py

例如:D:\Program Files\Python\Lib\tab.py

#python Tab
import sys 
import readline 
import rlcompleter 
import atexit 
import os 
readline.parse_and_bind('tab: complete') 
# windows
histfile = os.path.join(os.environ['HOMEPATH'], '.pythonhistory') 
# linux
# histfile = os.path.join(os.environ['HOME'], '.pythonhistory') 
try: 
 readline.read_history_file(histfile) 
except IOError: 
 pass 
atexit.register(readline.write_history_file, histfile) 

del os, histfile, readline, rlcompleter 

三、效果测试

使用import tab引入tab补全

import tab

四、常见问题

1. 同时安装python2.7 + python3.0

安装readline时使用:

python -2 -m pip install pyreadline

2. 提示readline不是DLL %1

请使用Python提供的命令安装,我就是下载网上编译好的readline模块就有这个问题。(使用第一步)

以上这篇Python (Win)readline和tab补全的安装方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python中的列表知识点汇总

Python list 在介绍 Python tuple 时,我使用了类比的方法,将其比做一个袋子,您可以在袋子中存放不同的东西。Python list 与此非常类似,因此,它的功能与袋...

Python面向对象特殊成员

类的特殊成员之call #!/usr/bin/env python # _*_coding:utf-8 _*_ class SpecialMembers: # 类的构造方法...

结合Python的SimpleHTTPServer源码来解析socket通信

结合Python的SimpleHTTPServer源码来解析socket通信

何谓socket 计算机,顾名思义即是用来做计算。因而也需要输入和输出,输入需要计算的条件,输出计算结果。这些输入输出可以抽象为I/O(input output)。 Unix的计算机处理...

从零学python系列之浅谈pickle模块封装和拆封数据对象的方法

封装是一个将Python数据对象转化为字节流的过程,拆封是封装的逆操作,将字节文件或字节对象中的字节流转化为Python数据对象,不要从不收信任的数据源中拆封数据。可以封装和拆封几乎任何...

Python中lambda的用法及其与def的区别解析

python中的lambda通常是用来在python中创建匿名函数的,而用def创建的方法是有名称的,除了从表面上的方法名不一样外,python中的lambda还有如下几点和def不一样...