Как установить значения по умолчанию для аргументов argparse metavar? - PullRequest
0 голосов
/ 06 марта 2019

Я использую argparse, чтобы мой скрипт на python мог принимать аргументы. В argparse я использую metavar, поэтому я могу взять 2 аргумента для одного флага. Я хочу иметь возможность установить значения по умолчанию для этих аргументов, если они не указаны. Как я могу установить значения по умолчанию для моих аргументов metavar?

parser = argparse.ArgumentParser(description='Sample ArgumentParser')    
parser.add_argument("--stuff", nargs=2, metavar=('arg1', 'arg2'))

1 Ответ

1 голос
/ 06 марта 2019

Как говорит @hpaulj, просто используйте параметр default:

import argparse

parser = argparse.ArgumentParser(description='Sample ArgumentParser')
parser.add_argument(
    "--stuff",
    nargs=2,
    metavar=('arg1', 'arg2'),
    default=('arg1def', 'arg2def')
)

args = parser.parse_args()
print('Args:', args)

Вывод:

λ python tmp.py
Args: Namespace(stuff=('arg1def', 'arg2def'))
...