Форум сайта python.su
1) Можно ли использовать аргументы без черточек? Например "run.py target=http://ya.ru task=search" ?
2) Не могу понять как сделать, чтобы один из нескольких аргументов обязательно присутствовал. То есть run.py url=http://ya.ru либо run.py ip=50.50.50.50
Офлайн
1) можно использовать что-нибудь кроме черточек (через prefix_chars)
ap = argparse.ArgumentParser(prefix_chars='-+')
modes = ap.add_mutually_exclusive_group(required=True) modes.add_argument('-d', '--digits', action='store_const', const='digits', dest='mode') modes.add_argument('-p', '--phrases', action='store_const', const='phrases', dest='mode') ap.add_argument('+s', '++stats', action='store_true', dest='stats')
Отредактировано adray (Ноя. 20, 2012 17:14:23)
Офлайн
Хоть adray уже и ответил, оставлю тут эту ссылку.
Офлайн
Спасибо и за ссылку и за ответы. А скажите, зачем нужен shlex.split ? Просто собираюсь использовать argparse для юникодных строк, а shlex с ними не работает. Почему нужно передавать shlex.split(value), а не просто value.split()?
Офлайн