Python 压缩文件:去除目录层级 - 代码示例
以下是一个 Python 程序示例,用于将指定目录中的所有文件压缩为一个 ZIP 文件,并且去除目录层级:
import os
import zipfile
def zipdir(path, ziph):
for root, dirs, files in os.walk(path):
for file in files:
filepath = os.path.join(root, file)
ziph.write(filepath, os.path.basename(filepath))
if __name__ == '__main__':
zipf = zipfile.ZipFile('myzipfile.zip', 'w', zipfile.ZIP_DEFLATED)
zipdir('/path/to/folder', zipf)
zipf.close()
在这个程序中,zipdir 函数使用 Python 的 os.walk 函数遍历指定目录中的所有文件,并且将每个文件添加到 ZIP 文件中。在添加文件时,使用 os.path.basename 函数获取文件的基本名称,并且将其作为 ZIP 文件中的文件名,这样就可以去除目录层级。最后,使用 zipfile.ZipFile 类创建 ZIP 文件,并将其保存到指定的文件路径。
要使用此程序,只需将 /path/to/folder 替换为要压缩的文件夹的路径,并将 myzipfile.zip 替换为要创建的 ZIP 文件的名称。然后,运行程序即可创建 ZIP 文件。
原文地址: https://www.cveoy.top/t/topic/m886 著作权归作者所有。请勿转载和采集!