如何在终端上显示标志(例如 [-h])?

How to display flags on terminal (e.g [-h])?

示例截图:我的期望输出: 我想为我的脚本的用户启用帮助标志,最初认为解决方案是使用 argparse:


parser = argparse.ArgumentParser(description='... blah blah ...')
parser.add_argument('file1', help='... blah blah ...')
parser.add_argument('file2', help='... blah blah ...')

出于某种原因,我无法打印到 cmd 提示符,因为添加了 -h(如我示例中的红色圆圈)returns FileNotFound 错误。上面的代码是不是不对?

如果是这样,你能把代码给我吗? 或者是否有任何有用的资源(我一直在寻找一个明确的例子,但无济于事)

尝试添加

parser = argparse.ArgumentParser(add_help=True)

我无法重现这个。

so59568543.py

import argparse

parser = argparse.ArgumentParser(description='... blah blah ...')
parser.add_argument('file1', help='... blah blah ...')
parser.add_argument('file2', help='... blah blah ...')
args = parser.parse_args()

print(args)

Windows10,Python3.7.3

C:\Users\X\Desktop>python so59568543.py
usage: so59568543.py [-h] file1 file2
so59568543.py: error: the following arguments are required: file1, file2

C:\Users\X\Desktop>python so59568543.py -h
usage: so59568543.py [-h] file1 file2

... blah blah ...

positional arguments:
  file1       ... blah blah ...
  file2       ... blah blah ...

optional arguments:
  -h, --help  show this help message and exit

C:\Users\X\Desktop>python so59568543.py aaa bbb
Namespace(file1='aaa', file2='bbb')

C:\Users\X\Desktop>