如果传入选项,则将值设置为 argparse 中的变量

rod*_*dee 7 python python-3.6

import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-y', '--y-option', action='store_true')
args = parser.parse_args()

y_option = "enable_y" if args.y_option else ''
print(y_option)
Run Code Online (Sandbox Code Playgroud)

如果传入-yor ,我想将变量设置为空字符串,我相信这应该可以通过 argparse 实现,因此不需要该行?我想不通。我无法使用默认值,因为即使未传入,它也会设置默认值。--y-optiony_optionenable_yy_option = ...-y

ohl*_*hlr 5

parser.add_argument('-y', '--y-option', action='store_const', const='enable_y', default='')
Run Code Online (Sandbox Code Playgroud)

https://docs.python.org/3/library/argparse.html#action