Я пишу программу, которая использует позиционный аргумент, который принимает «остальную часть» аргументов, например,
import argparse
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument(
'filenames',
nargs='*',
metavar="filename(s)",
)
args = parser.parse_args()
Здесь я использовал параметр metavar
, чтобы получить более полезную помощьтекст. Но проблема заключается в строке usage
:
>python test_argparse_plural.py -h
usage: test_argparse_plural.py [-h] [filenames) [filename(s ...]]
positional arguments:
filename(s)
optional arguments:
-h, --help show this help message and exit
Кажется, что она не очень хорошо справляется с частью (s)
. Вместо этого я хотел бы, чтобы строка usage
была либо
test_argparse_plural.py [-h] [filename(s)]
или, возможно,
test_argparse_plural.py [-h] [filename1, filename2, ...]
(или что-нибудь еще разумное, действительно)
Есть ли какие-либо простыеспособ достичь этого?