как в argparse() в python3 обработать значение аргумента содержащее "-"

Подскажите, как в argparse() в python3 обработать значение аргумента содержащее "-"?

Например есть функция

 def createParser():
    """Парсим аргументы запуска скрипта"""
    parser = argparse.ArgumentParser()
    parser.add_argument('-s', '--server_name', default='', help="Имя сервера с префиксом")
    parser.add_argument('-u', '--username', default='', help="username")
    parser.add_argument('-t', '--token', default='', help="API ключ")
    parser.add_argument('-i', '--items', default='', help='параметры запуска')
    return parser

и необходимо в --items передать параметр c дефисом, сам вызов выглядит так

python3.7 runner.py --username user --token [*******] --items command_line=pwd;ls -la

и получаю выхлоп

python3.7 runner.py --username user --token [*******] --items command_line=pwd;ls -la usage: runner.py [-h] [-s SERVER_NAME] [-u USERNAME] [-t TOKEN] [-i ITEMS]

runner.py: error: unrecognized arguments: -la'

Как можно это сделать?


Ответы (0 шт):