zipfile
Python中用于创建简单zip文件的模块:
import zipfile
files = ('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h')
zip_file_name = 'zipfile_test.zip'
zfh = zipfile.ZipFile(zip_file_name, 'w')
for file in files:
print 'Archiving file %s' % file
zfh.write(zip_file_name)
zfh.close()
touch a b c d e f g h
测试。
将前7项添加到zip文件后,它将挂起最后一项,但会一直写入zip文件,直到空间耗尽。这发生在我测试过的两个系统上,一个是Python2.4.3,另一个是Python2.6.2。如果文件数少于6或7,则创建zip文件时不会出现任何问题。否则,它会在7-15个文件之间失败,并开始将垃圾写入文件末尾。我尝试过改变:
zfh.write(zip_file_name)
致:
zfh.write(zip_file_name, zip_file_name, zipfile.ZIP_DEFLATED)
我做错了什么?