Using Python to add a list of files into a zip file

喜夏-厌秋 提交于 2019-12-04 01:15:30

You need to pass in the compression type as a keyword argument:

ZipFile.write(a, compress_type=zipfile.ZIP_DEFLATED)

Without the keyword argument, you are giving ZipFile.write() an integer arcname argument instead, and that is causing the error you see as the arcname is being normalised.

according to the guidance above, the final is: (just putting them together in case it could be useful)

import zipfile
import os

working_folder = 'C:\\Python27\\'

files = os.listdir(working_folder)

files_py = []

for f in files:
    if f.endswith('py'):
        fff = os.path.join(working_folder, f)
        files_py.append(fff)

ZipFile = zipfile.ZipFile("zip testing3.zip", "w" )

for a in files_py:
    ZipFile.write(os.path.basename(a), compress_type=zipfile.ZIP_DEFLATED)
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!