Интерактивная оболочка Python с переменными cmd или cmd2? - PullRequest
0 голосов
/ 16 ноября 2018

Я использую библиотеку cmd для разработки интерактивного инструмента (оболочки) python. Мое требование состоит в том, чтобы предоставить переменные и хранить значения против переменных. Возможно ли это в библиотеке cmd или cmd2?

>> get_values **A_VARIABLE 100 B_VARIABLE 200**

Ожидание: A_VARIABLE должно хранить 100 как значение, а также аналогично B_VARIABLE=200. В коде я должен иметь доступ к этим переменным.

#!/usr/bin/python
import cmd
import os

class Console(cmd.Cmd):

  def do_get_values(self, args):
      args_list = args.split()
      #Empty List
      print "args:", args_list

  def help_get_values(self):
      print '\n'.join(['Get Values',
                      'Usage: get_values 1 3 4 5'])

  def emptyline(self):
    pass

  def do_exit(self, arg):
        """Exits from the console (usage: exit)"""
        return -1

  def do_EOF(self, args):
        """Exit on system end of file character (Usage : CTRL+D)"""
        return self.do_exit(args)

if __name__== "__main__":

    prompt = Console()
    prompt.prompt = "\n>>"
    prompt.cmdloop("Welcome !")

Вывод моей программы:

python dummy_console.py
Welcome !

>>help

Documented commands (type help <topic>):
========================================
EOF  exit  get_values  help


>>get_values 1 2 3
args: ['1', '2', '3']

>>get_values NUM_1 1 NUM_2 2
args: ['NUM_1', '1', 'NUM_2', '2']

>>get_values ANUM 1 BNUM 2
args: ['ANUM', '1', 'BNUM', '2']

Примечание:
Здесь я мог видеть, что все значения взяты в качестве аргументов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...