def __call__(self, parser, namespace, values, option_string=None):
    with values as f:
        contents = f.read()
data = parser.parse_args(contents.split())
for k, v in list(vars(data).items()):
    if v and k != option_string.lstrip('-'):
        setattr(namespace, k, v)
how to get argparse to read arguments from a file with an option rather than prefix