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 中是不允许的吗?请帮忙。
最佳答案
file
是 open
的别名,已在 Python 3 中删除。
您可以改用open
,但是argparse
有更好的选择:[FileType()
工厂类型]:
parser.add_argument('reference_file', type=argparse.FileType('r'), help='blah blah')
关于Python3.3 类型=文件名错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19499206/