【问题标题】:Use an ArgumentParser argument as a default value of another argument [duplicate]使用 ArgumentParser 参数作为另一个参数的默认值 [重复]
【发布时间】:2022-01-12 23:46:29
【问题描述】:

我想将ArgumentParser 参数值设置为同一解析器中另一个参数的默认值。

期望的行为:

parser = ArgumentParser(formatter_class=ArgumentDefaultsHelpFormater)

parser.add_argument('-p', '--pin_file_path', help = "the directory of the given pin file", default=os.getcwd())
parser.add_argument('-o', '--other', help="", default=**pin_file_path!**)

【问题讨论】:

  • 设为可选项,然后根据需要在解析的args中手动检查并设置值?
  • this 有帮助吗?

标签: python argparse


【解决方案1】:

parse_known_args 解析参数并将其发送到另一个参数。

pin_file_path= None
parser = ArgumentParser(formatter_class=ArgumentDefaultsHelpFormater)
parser.add_argument('-p', '--pin_file_path', help = "the directory of the given pin file", default = os.getcwd())
args, remaining = parser.parse_known_args()
parser.add_argument('--option2', default=args.pin_file_path)
args = parser.parse_args()

【讨论】:

  • 是的,我是如何解决我的 pb 问题的,非常感谢!
猜你喜欢
  • 2014-04-19
  • 2015-11-05
  • 1970-01-01
  • 2023-03-11
  • 2015-03-30
  • 2019-04-14
  • 1970-01-01
  • 2016-05-03
  • 1970-01-01
相关资源
最近更新 更多