Python аргумент argparse @fromfile не распознан - PullRequest
0 голосов
/ 27 марта 2020

Я пытаюсь установить аргумент в текстовом файле fromfile, но он не распознается, однако, если я скопирую / вставлю те же аргументы в командную строку, это сработает! Что происходит?

Вот минимальный пример:

A 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

Но «нераспознанный аргумент» идентичен аргументу, указанному выше ??

1 Ответ

0 голосов
/ 27 марта 2020

Получается, что текстовый файл "fromfile" должен быть , разделенный символами новой строки .

Если мой файл аргументов выглядит так:

--load-model
foo

работает!

...