python - Python argparse 可选破折号整数参数
问题描述
是否可以使用 argparse 添加可选参数作为 -<integer>,
类似于接受 -<integer> 来说明要打印多少行的unixhead
和命令,
或者类似于接受 -<integer> 来说明要打印多少日志条目的命令?tail
git log
例如,
head -4 # print four lines
tail -12 # print 12 lines.
git log -7 # print 7 log entries
而参数是可选的,例如,这些都有效:
head # print default number of lines
tail # print default number of lines
git log # print all log entries through system pager
在 Python 中是否有通用和/或公认的方法来执行此操作?
谢谢。
解决方案
argparse
不支持动态选项名称。
资料来源:我试着做你问的同样的事情。
您可以自己完成任务,但它必须在之前或之后运行,argparse
并且必须修改sys.argv
. 这使得解决方案的一半将是回避argparse
。我建议您尝试找到支持这种参数传递方式的库。
推荐阅读
- python - Python - subprocess.Popen 一次又一次地打破我的大脑
- python - 如何迭代一个numpy矩阵?
- cmake - 访问当前 c++ 文件范围之外的头文件
- typescript - 在 mikroORM 中创建迁移时数据库不存在
- javascript - 获取两个输入的乘法并使用javascript将其放入另一个输入中
- reactjs - 无法更新状态
- scala - 当使用 scala 路径相关类型作为函数 codomain 时,为什么无法为该函数添加别名?
- kivy - KivyMD:无论如何尝试,小部件文本都不会更新
- html - CSS 图片库页面的边距空间比其他页面少?如何在所有页面上获得干净统一的布局外观?
- laravel - 502 错误网关 nginx/1.21.1