之前一直使用shell编程,习惯了shell的 tab 自动补全功能,而Python的命令行却不支持 tab 自动补全,故而研究让Python命令行支持自动补全功能。

1、首先找到Python调用库路径,具体方法如下:

按 Ctrl+C 复制代码

>>>python27
>>>import sys
>>>sys.path
['', '/usr/local/python27/lib/python27.zip', '/usr/local/python27/lib/python2.7', '/usr/local/python27/lib/python2.7/plat-linux2', '/usr/local/python27/lib/python2.7/lib-tk', '/usr/local/python27/lib/python2.7/lib-old', '/usr/local/python27/lib/python2.7/lib-dynload', '/usr/local/python27/lib/python2.7/site-packages']

2、复制tab.py到Python调用库路径:/usr/local/python27/lib/python2.7

 1 #cat tab.py2 #!/usr/bin/env python3 # python startup file4 import sys5 import readline6 import rlcompleter7 import atexit8 import os9 # tab completion
10 readline.parse_and_bind('tab: complete')
11 # history file
12 histfile = os.path.join(os.environ['HOME'], '.pythonhistory')
13 try:
14     readline.read_history_file(histfile)
15 except IOError:
16     pass
17
18 atexit.register(readline.write_history_file, histfile)
19 del os, histfile, readline, rlcompleter

3、修改系统变量

#echo "export PYTHONTAB=/usr/local/python27/lib/python2.7/tab.py" >>/etc/profile
#source /etc/profile

4、查看效果

[root@web01 python2.7]# python27
Python 2.7.10 (default, Jan 12 2016, 16:23:29)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tab
>>> import sys
>>> sys.
sys.__class__(              sys.argv                    sys.hexversion
sys.__delattr__(            sys.builtin_module_names    sys.long_info
sys.__dict__                sys.byteorder               sys.maxint
sys.__displayhook__(        sys.call_tracing(           sys.maxsize
sys.__doc__                 sys.callstats(              sys.maxunicode
sys.__excepthook__(         sys.copyright               sys.meta_path
sys.__format__(             sys.displayhook(            sys.modules
sys.__getattribute__(       sys.dont_write_bytecode     sys.path
sys.__hash__(               sys.exc_clear(              sys.path_hooks
sys.__init__(               sys.exc_info(               sys.path_importer_cache
sys.__name__                sys.exc_type                sys.platform
sys.__new__(                sys.excepthook(             sys.prefix
sys.__package__             sys.exec_prefix             sys.ps1
sys.__reduce__(             sys.executable              sys.ps2
sys.__reduce_ex__(          sys.exit(                   sys.py3kwarning
sys.__repr__(               sys.exitfunc(               sys.setcheckinterval(
sys.__setattr__(            sys.flags                   sys.setdlopenflags(
sys.__sizeof__(             sys.float_info              sys.setprofile(
sys.__stderr__              sys.float_repr_style        sys.setrecursionlimit(
sys.__stdin__               sys.getcheckinterval(       sys.settrace(
sys.__stdout__              sys.getdefaultencoding(     sys.stderr
sys.__str__(                sys.getdlopenflags(         sys.stdin
sys.__subclasshook__(       sys.getfilesystemencoding(  sys.stdout
sys._clear_type_cache(      sys.getprofile(             sys.subversion
sys._current_frames(        sys.getrecursionlimit(      sys.version
sys._getframe(              sys.getrefcount(            sys.version_info
sys._mercurial              sys.getsizeof(              sys.warnoptions
sys.api_version             sys.gettrace(
>>> sys.

转载于:https://www.cnblogs.com/heqiuyu/articles/6609464.html

python的tab自动补全相关推荐

  1. Windows 下python的tab自动补全

    Windows 下python的tab自动补全 对于新学python的朋友来说,python模块的功能多而难记,mac和Linux中有tab自动补全命令功能,使用Windows的同学们怎么办?下面我们 ...

  2. python自动补全_Windows 下python的tab自动补全

    Windows 下python的tab自动补全# 对于新学python的朋友来说,python模块的功能多而难记,mac和Linux中有tab自动补全命令功能,使用Windows的同学们怎么办?下面我 ...

  3. python3 idle自动补全_给Python IDLE加上自动补全和历史功能

    许多时候,我们使用Python,并不用写一个程序,一些不复杂的任务,我更喜欢在 IDLE(也就是交互式提示模式)下输入几行代码完成.然而,在这个模式下编辑代码,也有不够便利的地方,最主要的就是,不能用 ...

  4. CentOs6.5 更新python2.7,以及tab自动补全

    #安装python2.7之前,准备工作: yum install python-devel gcc patch readline* -y #解压并安装: tar xf Python-2.7.10.ta ...

  5. python2.7 tab,自动补全

    python <tab>自动补全 一.这个方法可以修改shell命令行的自动补全 1.获取python目录[我使用的是64位ubuntu系统] [~$]python Python 2.7. ...

  6. linux下 为自己编写的程序 添加tab自动补全 功能

    linux下 为自己编写的程序 添加tab自动补全功能 入门 complete 在我的tmp下随便写了一个a.sh, 为他补全 edit /etc/bash_completion.d/foo _foo ...

  7. 如何为 .NET Core CLI 启用 TAB 自动补全功能

    Intro 在 Linux 下经常可以发现有些目录/文件名,以及有些工具可以命令输入几个字母之后按 TAB 自动补全,最近发现其实 dotnet cli 也可以,从.NET Core 2.0 SDK ...

  8. vscode python 第三方库自动补全 第三方库的智能提示

    VS Code python设置第三方包的智能感知 因为使用Pyside6框架写Python程序,而QT自己的Qt Creator 在使用方面确实不如VScode轻便,故而使用VScode写Pysid ...

  9. VSCode中tab自动补全标签

    VSCode中tab自动补全标签 今天重置了vscode突然发现tab键不能补齐了,于是翻了翻以前记得笔记,就找到了方法. 进入setting.json文件 加入以下代码 "emmet.tr ...

最新文章

  1. php语句拼装,Thinkphp语句拼接
  2. BigDecimal去除末尾多余的0
  3. Asp.net 邮件传输(转)
  4. IM即时通讯:如何跳出传统思维来设计聊天室架构?
  5. 计算机系统维护技术txt,计算机系统维护技术A卷
  6. mysql死锁释放时间参数_【Mysql】mysql 事务未提交导致死锁 Lock wait timeout exceeded; try restarting transaction 解决办法...
  7. Qemu Tracing
  8. 12、(12.4.2)保护模式下数据段和栈段保护
  9. Python源码剖析笔记3-Python执行原理初探
  10. 2021-07-14 西门子PLC编程软件--博途V14软件的安装
  11. 数据仓库常见建模方法与大数据领域建模实例综述
  12. 牛客每日练习----​​​​​​​cayun日常之三七配对,ChiMu need water,mxh道歉记
  13. workFlow学习总结---------------------常用的工作流引擎
  14. 已有的事,后必再有。已行的事,后必再行。
  15. centos 7 | 安装和使用cpan
  16. centos7根分区扩容(适用目前主流版本)
  17. 【每周CV论文推荐】初学基于GAN的三维图像生成有哪些经典论文需要阅读
  18. 听书 app,学习用途
  19. 开篇 新手小白快速搭建微信商城
  20. java程序员从笨鸟到菜鸟_Java程序员从笨鸟到菜鸟之(十四)Html基础积累总结(上)...

热门文章

  1. 总结Cnblogs支持的常用Markdown语法
  2. 怎样配置Tomcat环境变量
  3. Linux之seq命令
  4. mysql 刚安装完的用户_mysql 离线安装后用户初始化
  5. 存储引擎配置引发的MongoDB启动失败
  6. Kubernetes!我要用这样的姿势拥抱你|坐标深圳
  7. 前端大牛or架构师应该具备这些
  8. linux下的 lib文件的学习思考
  9. swith 好久不用都忘记了
  10. 跨浏览器javascript