您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python的argparse的可选位置参数

Python的argparse的可选位置参数

这是argparse的局限性,但在3.7中已部分取消。

Unix工具通常不声称支持选项和参数的混合,即使它们经常支持。问题在于将其与子命令等其他功能结合使用会导致歧义。因此,通常,支持所有这些功能的库都会在问题上出现问题,并且不允许混用。或者,他们做一些骇人听闻的事情- 在最后,开始时,在某些难以预测的情况下允许选择,但在中间情况下则不允许。

那是argparse原来做的。但是3.7添加Intermixed解析

您必须手动致电parse_intermixed_args而不是parse_args

而且,如果您尝试将其与任何功能不兼容的功能结合使用,则会遇到异常(即使您传递的特定参数集没有歧义,这也使调试更加容易)。

但是否则,它将按预期工作:选项(当然还有它们的值)可以在命令行中的任意位置与位置参数自由混合。

不幸的是,我不知道要argparse在早期版本中获得3.7才能在PyPI上提供一个反向移植。半官方的argparsebackport主要用于根本没有2.7 / 3.2之前的版本,而仅backport 3.4版本。

python 2022/1/1 18:27:30 有191人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶