python tab 自动补全

学习python,经常要使用python命令行查找一些不熟悉的使用方法等等,但是python命令行下没有自带tab补全的功能,看见别人写了tab,可以解决特此记下,以备后用

1.创建tab.py文件,内容如下:

#!/usr/bin/env python
# python startup file
import sys
import readline
import rlcompleter
import atexit
import os
# tab completion
readline.parse_and_bind(‘tab: complete‘)
# history file
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

2.代码有了,我们还需要将脚本放到python指定的目录下,可以使用sys.path来查看一下

>>> import sys
>>> sys.path
[‘‘, ‘/usr/lib/python2.7‘, ‘/usr/lib/python2.7/plat-x86_64-linux-gnu‘, ‘/usr/lib/python2.7/lib-tk‘, ‘/usr/lib/python2.7/lib-old‘, ‘/usr/lib/python2.7/lib-dynload‘, ‘/usr/local/lib/python2.7/dist-packages‘, ‘/usr/lib/python2.7/dist-packages‘, ‘/usr/lib/python2.7/dist-packages/PILcompat‘, ‘/usr/lib/python2.7/dist-packages/gtk-2.0‘, ‘/usr/lib/python2.7/dist-packages/ubuntu-sso-client‘]

一般我们会将这一类代码放在/usr/local/lib/python2.7/dist-packages目录下

3.把tab.py 放到指定目录下

mv tab.py /usr/local/lib/python2.7/dist-packages

4.使用

>>> import tab
>>> sys.
sys.__class__(              sys.__subclasshook__(       sys.exitfunc(               sys.path_importer_cache
sys.__delattr__(            sys._clear_type_cache(      sys.flags                   sys.platform
sys.__dict__                sys._current_frames(        sys.float_info              sys.prefix
sys.__displayhook__(        sys._getframe(              sys.float_repr_style        sys.ps1
sys.__doc__                 sys._mercurial              sys.getcheckinterval(       sys.ps2
sys.__excepthook__(         sys._multiarch              sys.getdefaultencoding(     sys.py3kwarning
sys.__format__(             sys.api_version             sys.getdlopenflags(         sys.pydebug
sys.__getattribute__(       sys.argv                    sys.getfilesystemencoding(  sys.setcheckinterval(
sys.__hash__(               sys.builtin_module_names    sys.getprofile(             sys.setdlopenflags(
sys.__init__(               sys.byteorder               sys.getrecursionlimit(      sys.setprofile(
sys.__name__                sys.call_tracing(           sys.getrefcount(            sys.setrecursionlimit(
sys.__new__(                sys.callstats(              sys.getsizeof(              sys.settrace(
sys.__package__             sys.copyright               sys.gettrace(               sys.stderr
sys.__reduce__(             sys.displayhook(            sys.hexversion              sys.stdin
sys.__reduce_ex__(          sys.dont_write_bytecode     sys.long_info               sys.stdout
sys.__repr__(               sys.exc_clear(              sys.maxint                  sys.subversion
sys.__setattr__(            sys.exc_info(               sys.maxsize                 sys.version
sys.__sizeof__(             sys.exc_type                sys.maxunicode              sys.version_info
sys.__stderr__              sys.excepthook(             sys.meta_path               sys.warnoptions
sys.__stdin__               sys.exec_prefix             sys.modules
sys.__stdout__              sys.executable              sys.path
sys.__str__(                sys.exit(                   sys.path_hooks
时间: 2024-10-24 23:12:10

python tab 自动补全的相关文章

Python Tab自动补全

保存路径:/usr/lib/python2.6/site-packages/tab/py 编写python脚本 $ cat tab_enable.py #!/usr/bin/python # python startup file import sys import readline import rlcompleter import atexit import os # tab completion readline.parse_and_bind('tab: complete') # hist

python2.7 tab,自动补全

python <tab>自动补全 一.这个方法可以修改shell命令行的自动补全 1.获取python目录[我使用的是64位ubuntu系统] [~$]python Python 2.7.3 (default, Apr 10 2013, 06:20:15) [GCC 4.6.3] on linux2 Type "help", "copyright", "credits" or "license" for more 

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

#安装python2.7之前,准备工作: yum install python-devel gcc patch readline* -y #解压并安装: tar xf Python-2.7.10.tar.xz cd Python-2.7.10 sed -i 's/#readline/readline/g' Modules/Setup.dist ./configure --prefix=/usr/local/python make && make install #更改系统python调用

python的tab自动补全

很久不写blog了. 最近发现python的自动补全是个好东西. 分享一下. 参考了:http://www.cnblogs.com/allenblogs/archive/2011/04/21/2023288.html 和 软件手册 下载地址:http://vim.sourceforge.net/scripts/script.php?script_id=850 直接粘贴了. ------------------------------ vim编辑器中 #mkdir -p ~/.vim/after/

python交互模式下的tab自动补全

python在交互模式下,输入命令的时候按tab键就按时间tab键的功能输出,在书写python时多有不便. 把下面的代码写入一个文件tab.py,放到/usr/lib/python2.6/site-packages/下 #!/usr/bin/env python import sys import readline import rlcompleter import atexit import os readline.parse_and_bind('tab:complete') histfil

python vim自动补全

1.下载插件包 https://github.com/vim-scripts/Pydiction ##################### 包括三个文件 python_pydiction.vim #vim插件 complete-dict #python关键字和模块列表, pydiction.py  #python脚本,可以添加更多的模块 2.配置 #1.查看家目录下是否有.vim目录,若没有则创建. mkdir  -p  ~/.vim/after/ftplugin/pydiction #2.把

sudo和man的tab自动补全

要加入sudo和man的tab自动补全功能,只需在~/.bashrc中加入: #Enabling tab-completioncomplete -cf sudocomplete -cf man

Python基础 (tab自动补全)

Python 自动补全 1.添加python自动补全的脚本 vim ~/.pythonstartup #添加如下 #!/usr/bin/python import sys import readline import rlcompleter import atexit import os # tab completion readline.parse_and_bind('tab: complete') # history file histfile = os.path.join(os.envir

Ubuntu 16.04.2 LTS 安装python vim自动补全工具pydiction

Pydiction 可以是我们使用Tab键自动补全Python代码在Vim,是一款非常不错的插件. 下载Pydiction mkdir ~/.vim mkidr ~/.vim/tools cd ~/.vim/tools #可以先下载好放到Ubuntu系统中 git clone https://github.com/rkulla/pydiction.git 配置Pydiction #- UNIX/LINUX/OSX: Put python_pydiction.vim in ~/.vim/after