我想使用pythons argparse模塊來解析我的cli參數字符串。這適用於從終端傳遞的參數,但不適用於給定的字符串。如何在預定義的參數字符串中使用python的argparse?
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
在o m e T e s t F i l e
某種方式轉化。如前所述,如果我從終端傳遞文件名,它就可以工作。
我可以想象,這與字符串編碼有關。有人有一個想法如何解決這個問題嗎?
您可能需要查看[argparse文檔](http://docs.python.org/library/argparse.html#parsing-arguments)。 – 2012-01-16 10:19:10