Python argparse ограничения типов и выбора при nargs > 1

Название практически говорит само за себя. Если у меня nargs больше 1, могу ли я как-то установить ограничения (например, выбор/тип) на отдельные разбираемые args?

Вот пример кода:

parser = argparse.ArgumentParser()
parser.add_argument('-c', '--credits', nargs=2,
    help='number of credits required for a subject')

Для аргумента -c мне нужно указать предмет и сколько кредитов требуется. Предмет должен быть ограничен предопределенным списком предметов, а количество необходимых кредитов должно быть плавающей величиной.

Возможно, я мог бы сделать это с помощью подпарсера, но в данном случае это уже является частью подкоманды, поэтому я не хочу усложнять ситуацию.

16
задан 24 December 2011 в 10:46
поделиться