使用argparse库可以实现在一组参数中要求必须选择一个的功能。下面是一个使用argparse库的示例代码:
import argparse
parser = argparse.ArgumentParser()
group = parser.add_mutually_exclusive_group(required=True)
group.add_argument('-a', '--option_a', help='Option A')
group.add_argument('-b', '--option_b', help='Option B')
args = parser.parse_args()
if args.option_a:
print('Option A is chosen')
elif args.option_b:
print('Option B is chosen')
在这个示例中,使用add_mutually_exclusive_group()
方法将参数-a
和-b
添加到一个参数组中,并且通过设置required=True
来要求必须选择其中一个参数。
然后使用parse_args()
方法解析命令行参数,并根据选择的参数进行相应的操作。
当运行这个脚本时,用户必须在-a
和-b
参数之间选择一个。如果用户没有选择任何一个参数,argparse库会显示错误信息并显示帮助信息。
以下是一些运行示例:
$ python script.py -a
Option A is chosen
$ python script.py -b
Option B is chosen
$ python script.py
usage: script.py [-h] (-a OPTION_A | -b OPTION_B)
script.py: error: one of the arguments -a/--option_a -b/--option_b is required