玩轉Linux的朋友們,還在爲python默認的無tab補全而煩惱嗎?
下面是在下的一個解決方法,希望能幫助到新入學python的學者。
第一步:編寫一鍵補全腳本tab.py
[root@localhost~]#vim tab.py
#!/usr/bin/env python
import sys
import readline
import rlcompleter
import atexit
import os
#tab completion
readline.parse_and_bind('tab: complete')
第二步:進入python交互模式,查看python模塊導入的選擇順序
[root@localhost ~]# python
Python 2.7.5 (default, Nov 20 2015, 02:00:19)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['', '/usr/lib64/python27.zip', '/usr/lib64/python2.7', '/usr/lib64/python2.7/plat-linux2', '/usr/lib64/python2.7/lib-tk', '/usr/lib64/python2.7/lib-old', '/usr/lib64/python2.7/lib-dynload', '/usr/lib64/python2.7/site-packages', '/usr/lib64/python2.7/site-packages/gtk-2.0', '/usr/lib/python2.7/site-packages']
>>>
第三步:拷貝一鍵補全腳本到python模塊默認路徑/usr/lib64/python2.7
[root@localhost ~]cp tab.py /usr/lib64/python2.7/
第四步:導入一鍵補全模塊
[root@localhost ~]# python
Python 2.7.5 (default, Nov 20 2015, 02:00:19)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tab
>>> import sys
>>> sys. ——雙tab
sys.__class__( sys.exitfunc(
sys.__delattr__( sys.flags
...