Я хочу использовать модуль pythons argparse для анализа моей строки параметров cli. Это работает для параметров, передаваемых с терминала, но не с заданной строкой.
import argparse
parser = argparse.ArgumentParser(description='Argparse Test script')
parser.add_argument("param", help='some parameter')
argString = 'someTestFile'
print(argString)
args = parser.parse_args(argString)
Если я запустил этот скрипт, я получу следующий результат:
~/someTestFile
usage: argparsetest.py [-h] param
argparsetest.py: error: unrecognized arguments: o m e T e s t F i l e
~ / someTestFile
каким-то образом преобразуется в или T e s t F i l e
. Как уже упоминалось, он работает, если я передаю имя файла из терминала.
Могу представить, что это как-то связано со строковыми кодировками. У кого-нибудь есть идеи, как это исправить?