求助:ZipExtFile对象为何没有open属性?
问题解答
ZipExtFile本身就是压缩包内单个文件的已打开流对象,它没有open()方法。你之所以报错,是因为搞混了ZipFile和ZipExtFile的职责:ZipFile代表整个压缩包,它提供open()方法,用来打开包内的某个文件并返回ZipExtFile对象;- 而你拿到的
f已经是ZipExtFile,相当于已经完成了“打开文件”的步骤,直接对它进行读写操作即可。
正确的使用示例:
如果要读取这个CSV文件,直接用f作为文件流就行:import csv # 直接用已有的ZipExtFile对象f读取内容 reader = csv.reader(f) for row in reader: print(row)或者读取文本内容:
content = f.read().decode('utf-8') print(content)
内容的提问来源于stack exchange,提问作者Raksha
相关产品推荐
相关产品推荐

