作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有没有办法将“-help”命令包含到 argparse 帮助列表中?
如果我输入“-help”,我希望在输出上有类似的内容。
optional arguments:
-h, -help, --help show this help message and exit
谢谢
最佳答案
正如@Akaisteph7建议的那样:
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-help', action="help", help="second help :)")
parser.add_argument('-f', '--foo')
parser.print_help()
0945:~/mypy$ python3 stack57058526.py
usage: stack57058526.py [-h] [-help] [-f FOO]
optional arguments:
-h, --help show this help message and exit
-help second help :)
-f FOO, --foo FOO
更改为:
parser = argparse.ArgumentParser(add_help=False)
parser.add_argument('-h','--help','-help', action="help", help="replacement help")
0946:~/mypy$ python3 stack57058526.py
usage: stack57058526.py [-h] [-f FOO]
optional arguments:
-h, --help, -help replacement help
-f FOO, --foo FOO
将“-help”标志添加到默认帮助中需要修改几个“私有(private)”属性:
parser = argparse.ArgumentParser()
parser._actions[0].option_strings += ['-help']
parser._option_string_actions['-help'] = parser._option_string_actions['-h']
0947:~/mypy$ python3 stack57058526.py
usage: stack57058526.py [-h] [-f FOO]
optional arguments:
-h, --help, -help show this help message and exit
-f FOO, --foo FOO
如果您想将此更改构建到本地版本的 argparse
中,您可以在 ArgumentParser.__init__
方法中修改此代码块:
if self.add_help:
self.add_argument(
default_prefix+'h', default_prefix*2+'help',
action='help', default=SUPPRESS,
help=_('show this help message and exit'))
是否更改 argparse.py
的本地副本或子类 ArgumentParser
由您决定。
关于Python:如何将 '-help' 添加到 argparse 帮助命令列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57058526/
我是一名优秀的程序员,十分优秀!