Python';args parser:如何将位置参数的命令行输入设置为可选参数的默认值?

Python';args parser:如何将位置参数的命令行输入设置为可选参数的默认值?,python,argparse,Python,Argparse,我希望位置输入的命令行输入是可选参数的默认值,如下所示: parser.add_argument("Foo") parser.add_argument("-b", dest="bar") parser.set_defaults(parser.Foo) options = parser.parse_args() 这样的事情可能吗?或者我应该做一些类似的事情: parser.add_argument("Foo") parser.add_argument("-b", dest="bar") par

我希望位置输入的命令行输入是可选参数的默认值,如下所示:

parser.add_argument("Foo")
parser.add_argument("-b", dest="bar")
parser.set_defaults(parser.Foo)

options = parser.parse_args()
这样的事情可能吗?或者我应该做一些类似的事情:

parser.add_argument("Foo")
parser.add_argument("-b", dest="bar")
parser.set_defaults("same as Foo")

options = parser.parse_args()
if options.bar == "same as Foo":
    options.bar = options.Foo

我会像您在第二个代码块中那样尝试,但是使用
None
作为sentinel值,而不是神奇的字符串。

我希望帮助文件显示默认值与位置输入相同。