簡體   English   中英

Python CMD自動完成

[英]Python CMD autocomplete

我目前正在使用Python的CMD模塊創建命令行界面。此命令行采用以下形式表示各種函數的多個參數:“ command parametre1 = value1 parametre2 = value2”,依此類推。我想設置TAB自動完成功能參數的名稱以及命令名稱。 命令名稱“自動完成”已完成,但與參數的自動完成不盡相同。 救命

我認為這可以滿足您的要求:

import cmd


class MyCmd(cmd.Cmd):
    def do_command(self, line):
        'do_command: [parametre[1,2]=xxx]'

    def complete_command(self, text, line, begidx, endidx):
        return [i
                for i in ('parametre1=', 'parametre2=')
                if i.startswith(text)]

    def do_EOF(self, line):
        'exit the program. Use  Ctrl-D (Ctrl-Z in Windows) as a shortcut'
        return True

if __name__ == "__main__":
    myCmd = MyCmd()
    myCmd.cmdloop("Welcome! What is your command?")

參考: https : //wiki.python.org/moin/CmdModule#Completion

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM