import sys
import argparse
parser = argparse.ArgumentParser(description='blah blah')
parser.add_argument('reference_file', type=file, help='blah blah')
args = parser.parse_args()
当我运行上面的脚本时,我收到以下错误。
NameError: name 'file' is not defined
我不知道出了什么问题。 Python 3.3中不允许这样做吗?请帮忙。
答案 0 :(得分:4)
file
是open
的别名,已在Python 3中删除。
您可以改为使用open
,但argparse
有更好的选择:[FileType()
工厂类型]:
parser.add_argument('reference_file', type=argparse.FileType('r'), help='blah blah')