python argparser-如何允许解析器处理标志和非标志参数

问题描述 投票:1回答:1

我将如何设置我的argparser使其具有以下行为?

backup -c example
backup example
backup -r example

我想让我的程序具有创建/列出/删除的各种标志。当我自己传递名称而不带标志时,我想以此作为触发来运行该过程。

如果我使用位置参数来捕获备份过程的名称,那么我将失去按预期方式传递标志的能力,没有一个我无法传递未指定的参数。

python
1个回答
0
投票

根据我的理解,您希望将参数用作程序的flags

# Creating flag based argument
# Set to true if "--c" is mentioned
parser.add_argument('--c', action='store_true', help='create')

# Parsing
opt = parser.parse_args()

# Using argument
if opt.c:
    create()
© www.soinside.com 2019 - 2024. All rights reserved.