Python 需要 argparse?
Python argparse required?
只有当我没有 select 另一个选项时,我如何才能使它成为必需的参数,所以当我 select 版本时它不应该需要 -f
,但其余的什么时候需要?
parser = argparse.ArgumentParser(
description="This script will check the uri's from XXX")
parser.add_argument(
"-f", "--file", help="XXX export file to use", required=True)
parser.add_argument("-c", "--check", action="store_true",
help="Check the uri's")
parser.add_argument("-p", "--passwords", action="store_true",
help="Check the weak passwords")
parser.add_argument("-V", "--version", action="store_true",
help="Show version")
self.params = parser.parse_args(self.get_params())
所以,有两件事:
- 在一般情况下,这是通过
add_mutually_exclusive_group(required=True)
并将互斥参数添加到该组来完成的(这不是 完全 你想要的,因为它不会允许你通过两个,但它已经足够接近了)。
- 在这种特定情况下,您应该使用 the
action='version'
action 来显示专门为此目的而存在的版本,并保留 -f
plain required=True
正如您已经编写的那样它。
只有当我没有 select 另一个选项时,我如何才能使它成为必需的参数,所以当我 select 版本时它不应该需要 -f
,但其余的什么时候需要?
parser = argparse.ArgumentParser(
description="This script will check the uri's from XXX")
parser.add_argument(
"-f", "--file", help="XXX export file to use", required=True)
parser.add_argument("-c", "--check", action="store_true",
help="Check the uri's")
parser.add_argument("-p", "--passwords", action="store_true",
help="Check the weak passwords")
parser.add_argument("-V", "--version", action="store_true",
help="Show version")
self.params = parser.parse_args(self.get_params())
所以,有两件事:
- 在一般情况下,这是通过
add_mutually_exclusive_group(required=True)
并将互斥参数添加到该组来完成的(这不是 完全 你想要的,因为它不会允许你通过两个,但它已经足够接近了)。 - 在这种特定情况下,您应该使用 the
action='version'
action 来显示专门为此目的而存在的版本,并保留-f
plainrequired=True
正如您已经编写的那样它。