type = dict в argparse.add_argument ()

Я пытаюсь установить использовать словарь в качестве необязательного аргумента (используя argparse); у меня есть следующая строка:

parser.add_argument('-i','--image', type=dict, help='Generate an image map from the input file (syntax: {\'name\': <name>, \'voids\': \'#08080808\', \'0\': \'#00ff00ff\', \'100%%\': \'#ff00ff00\'}).')

Но запуск сценария:

 $ ./script.py -i {'name': 'img.png','voids': '#00ff00ff','0': '#ff00ff00','100%': '#f80654ff'}

script.py: error: argument -i/--image: invalid dict value: '{name:'

Хотя внутри интерпретатора,

>>> a={'name': 'img.png','voids': '#00ff00ff','0': '#ff00ff00','100%': '#f80654ff'}

работает нормально.

Итак как мне передать аргумент? Заранее спасибо.

24
задан wim 7 October 2019 в 02:01
поделиться