Я в настоящее время используют docopt LIB в первый раз, так что я, безусловно, сделать что-то неправильноПоведение модуля docopt (аргумент парсер)
Мой сценарий:
"""prog
Usage:
prog.py (-h | --help)
prog.py (--version)
prog.py -s TAG [-t NB_NUC]
Options:
-h, --help help
--version version
-s TAG Some TAG I want.
-t NB_NUC A number of nuc.
"""
Если я пишу: питон прог .py -s SMT
я получаю:
{'--help': False,
'--version': False,
'-h': False,
'-s': True,
'-t': True,
'NB_NUC': None,
'TAG': 'SMT'}
И это, кажется, correc т, но если я пишу:
python prog.py -s -t 10 -> TAG contain 10 (instead of None)
python prog.py -t 10 -s SMT -> TAG contain always 10 (instead of SMT) and NB_NUC contain SMT (instead of 10)
python prog.py -s SMT -t -> TAG contain SMT and NB_NUC contain None (and its what I expected on this way)
Итак, я попробовал много комбинации, но я не понимаю, как это должно слово ...
То, что я хочу, это TAG всегда содержит значение которые соответствуют аргументу -s, с None или ошибкой, если ничего не дано после -s, и я не понимаю, почему это не так.
Спасибо за вашу помощь!
Привет, спасибо за Ваш help.I нашел проблему: это потому, что линии в моей помощи являются табуляция с отступом, а не с отступом в пространстве, и, заменив табуляцию пробелами, теперь он работает нормально. У меня возникла проблема с этим в docopt github. – Liad
Хорошо, не проблема :) –