【问题标题】:Python argparse @fromfile argument not recognisedPython argparse @fromfile 参数无法识别
【发布时间】:2020-03-26 23:33:53
【问题描述】:

我正在尝试在“fromfile”文本文件中设置一个参数,但无法识别它,但是如果我将相同的参数复制/粘贴到命令行中,它就可以工作!怎么回事?

这是一个最小的例子:

像这样的main.py

def main(args):
    pass

if __name__ == '__main__':
    parser = argparse.ArgumentParser(fromfile_prefix_chars='@')
    parser.add_argument("--load-model", default=None, help="model to load")
    main(parser.parse_args())

还有文本文件args.txt

--load-model foo

这样称呼:

> python main.py @args.txt
usage: main.py [--load-model LOAD_MODEL]
main.py: error: unrecognized arguments: --load-model foo

但“无法识别的论点”与上面列出的论点相同??

【问题讨论】:

    标签: python argparse


    【解决方案1】:

    原来“fromfile”文本文件需要用换行符分隔

    如果我的参数文件是这样的:

    --load-model
    foo
    

    有效!

    【讨论】:

      猜你喜欢
      • 2013-06-11
      • 2019-07-14
      • 2012-09-30
      • 2015-07-20
      • 2021-08-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多