<p><a href="https://docs.python.org/2/library/zipfile.html#zipfile.ZipFile.write" rel="nofollow">^{<cd1>}</a>需要一个文件名作为第一个参数,该文件应该存在于系统中。如果是,则将该特定文件复制到zip存档中。在</p>
<p>实际上,您需要使用-<a href="https://docs.python.org/2/library/zipfile.html#zipfile.ZipFile.writestr" rel="nofollow">^{<cd2>}</a>-它期望archivename作为第一个参数,data作为第二个参数。在</p>
<p>另外,您可以在任何地方创建zip归档文件,只需在创建<code>zipFileName</code>时使用<code>os.path.join()</code>将目录加入到zip文件名中。执行所需操作的示例代码-</p>
<pre><code>import os.path
zipFileNameSrc = '100-Test.zip'
zipFile = open(zipFileNameSrc)
unzippedFile = zipfile.ZipFile(zipFile)
imgList = [(s, unzippedFile.read(s)) for s in unzippedFile.namelist() if (".jpg" or ".JPG") in s]
#image names: imgList[i][0] and images: imgList[i][1]
#...
#...additional logic to split into sets of 25 images
#...fileTuplesList = imgList[:25]
zipNo = 1
#zipFileDest = destination + "/" + zipSrcNm + "/" + zipNo.__str__() + ".zip"
zipFileName = os.path.join('<directory for zip>',zipNo.__str__() + ".zip")
zipOut = zipfile.ZipFile(zipFileName, 'w')
for i in xrange(len(fileTuplesList)):
fileNameAndPath = fileTuplesList[i][0]
actualFile = fileTuplesList[i][1]
zipOut.writestr(fileNameAndPath, actualFile)
zipOut.close()
</code></pre>
<hr/>
<p>在我的系统中工作的示例/演示代码-</p>
^{pr2}$