У меня есть программа, в которой я пытался вставить справку в мой код, используя argparse:
import argparse,sys
parser = argparse.ArgumentParser(description='prog desc')
parser.add_argument('path', help='name of directory')
args = parser.parse_args()
parser.print_help()
, это печатает:
>python testArgs.py
usage: testArgs.py [-h] path
testArgs.py: error: too few arguments
, но я ожидаю того же, как если бы я вошел-h:
>python testArgs.py -h
usage: testArgs.py [-h] path
prog desc
positional arguments:
path name of directory
optional arguments:
-h, --help show this help message and exit
Но если я переключу положение print_help () перед parse_args (), то он будет работать правильно:
import argparse,sys
parser = argparse.ArgumentParser(description='prog desc')
parser.add_argument('path', help='name of directory')
parser.print_help()
args = parser.parse_args()
output:
>python testArgs.py
usage: testArgs.py [-h] path
prog desc
positional arguments:
path name of directory
optional arguments:
-h, --help show this help message and exit
usage: testArgs.py [-h] path
testArgs.py: error: too few arguments
Что я делаю не так?