【发布时间】:2013-09-22 15:47:51
【问题描述】:
我想使用 argparse 打开文件进行读取。 在 cmd 中它必须看起来像:my_program.py /filepath
这是我的尝试:
parser = argparse.ArgumentParser()
parser.add_argument('file', type = file)
args = parser.parse_args()
【问题讨论】:
-
它到底做了什么?
-
您目前有什么问题?
-
运行这个我有错误:parser.add_argument('file', type = file) NameError: name 'file' is not defined 我不完全理解 argparse 是如何工作的......
-
type = fnc在fnc是一个接受字符串并返回所需对象或引发错误的函数时有效。 Python 中没有file函数。type=open确实有效,因为有一个 Python 函数open(filename)'. argparse provides a better function,argparse.FileType()`(实际上是一个函数构造函数)。但是wims 答案中的简单字符串参数是一个更好的起点。 -
type=file在 Python2.7(及更早版本)中工作。但在 Python3 中,file已被删除。 stackoverflow.com/questions/112970/…