• 技术文章 >头条

    新手必学的使用命令行实现tab键自动补全功能

    silencementsilencement2019-07-15 13:02:25原创2708

    具体实现步骤如下

    1.编写具体的实现tab补全功能的脚本,名为tab.py

    #!/usr/bin/python   
    # python tab complete   
    
    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的模块路径

    >>> 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/lib/python2.7/site-packages']  
    >>>

    python的模块放在了/usr/lib64/python27下面,将脚本拷贝到该目录下,在使用时导入即可。

    3.导入tab

    >>> import tab

    >>> import os

    >>> os.

    Display all 249 possibilities? (y or n)

    4.但python读取模块的路径顺序优先是从当前目录开始,所以若是当前目录也存在tab.py,但内容不同的python脚本,则可能会报错,所以在环境变量中也指定tab.py脚本

    #for python  
    export PYTHONSTARTUP=/usr/lib64/python2.7/tab.py
    专题推荐:自动补全
    品易云
    上一篇:三分钟搞定Python中的装饰器 下一篇:详解为什么Python中一切皆对象

    相关文章推荐

    • 10分钟用Python编写贪吃蛇小游戏• Python小白必学的面向对象

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网