使用方法的type
参数argparse.add_argument
,您可以要求参数是可读文件:
parser.add_argument('--sqlite-file', type=argparse.FileType('r'))
作为指定此类型的一个好处,argparse 检查文件是否可以读取,如果不能读取,则向用户显示错误。
有没有办法获取传递的文件名而不是io.TextIOWrapper
or的实例io.BufferedReader
?
由于文件名出现在解析器('sqlite_file': <_io.TextIOWrapper name='data/export.sqlite' ...
或'sqlite_file': <_io.BufferedReader name='data/export.sqlite' ...>
)的字符串表示中,它应该是可能的。
怎么做?