我使用argparse,我想是這樣的:test.py --file hello.csv的Python:argparse閱讀CSV文件的功能
def parser():
parser.add_argument("--file", type=FileType('r'))
options = parser.parse_args()
return options
def csvParser(filename):
with open(filename, 'rb') as f:
csv.reader(f)
....
....
return par_file
csvParser(options.filename)
我得到一個錯誤:類型錯誤脅迫爲Unicode:需要字符串或緩衝區,找到文件。
我該如何解決這個問題?
那麼,你怎麼想我將能夠採取這已經打開的文件對象,並通過我創建的函數解析它?我明白了,但是我想要它,所以用戶可以在命令提示符下輸入文件名 – TTT
@TTT:文件對象只是對象。將它傳遞給函數。 –
@TTT:您的用戶**可以輸入文件名。 'argparse'然後爲你打開這個文件並給你生成的文件對象。 –