python <tab>自动补全

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 information.
>>> import sys
>>> sys.path
['', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/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/PIL', '/usr/lib/python2.7/dist-packages/gst-0.10', '/usr/lib/python2.7/dist-packages/gtk-2.0',
'/usr/lib/python2.7/dist-packages/ubuntu-sso-client', '/usr/lib/python2.7/dist-packages/ubuntuone-client', 
'/usr/lib/python2.7/dist-packages/ubuntuone-control-panel', '/usr/lib/python2.7/dist-packages/ubuntuone-couch', 
'/usr/lib/python2.7/dist-packages/ubuntuone-installer', '/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol']
>>> 


从上面看出python在我电脑上的路径是  /usr/lib/python2.7



2.切换至该目录写个startup.py的脚本,脚本目录就是处理python中<tab>事件,脚本内容如下


#!/usr/bin/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



3.切换至自己主目录


[/usr/lib/python2.7$]cd 
[~$]vi .bashrc 


4. 增加环境变量


#for python
export PYTHONSTARTUP=/usr/lib/python2.7/startup.py


5.配置环境变量生效

[~$]source .bashrc 


PYTHONSTARTUP是什么东西呢?

If this is the name of a readable file, the Python commands in that file are executed before the first prompt 
is displayed in interactive mode.  The file is executed in the same name space where interactive commands are
executed so that  objects defined  or  imported in it can be used without qualification in the interactive session.  
You can also change the prompts sys.ps1 and sys.ps2 in this file.







原文地址:https://www.cnblogs.com/pangblog/p/3327461.html