擅长:python、mysql、java
<p><code>DictReader</code>需要一个文件或类似文件的对象:我们可以通过将压缩后的文件加载到<code>io.StringIO</code>实例中来满足这个期望</p>
<p>请注意<code>StringIO</code>期望其参数为<code>str</code>,但从zipfile读取文件返回<code>bytes</code>,因此必须对数据进行解码。本例假设csv最初是使用本地系统的默认编码进行编码的。如果不是这样,则必须将正确的编码传递给<code>decode()</code></p>
<pre><code>for name in myzipfile.namelist():
data = myzipfile.open(name).read().decode()
mycsv = io.StringIO(data)
reader = csv.DictReader(mycsv)
for row in reader:
print(row)
</code></pre>