繁体   English   中英

如何在Python中解压缩文件但保留Zip文件夹

[英]How to Unzip files in Python but Keep Zip Folder

我正在尝试让Python解压缩文件夹中的所有文件,但我希望将其保留在一个新解压缩的文件夹中,该文件夹的名称与它们来自的zip文件夹的名称相同。

例如,如果我的文件夹“ Met”具有两个zip文件夹:

folder1.zip:file1

folder2.zip:file2

我希望文件最终如下所示:

Met \\ folder1 \\ file1

Met \\ folder2 \\ file2

当前,该程序将两个文件都放在Met文件夹中:

Met \\ file1和file2

#Unzip all zip files
zip_files = glob.glob(r"C:\Users\simon.rhee\Desktop\Met\*.zip")

i = 1
for u in zip_files:
    dir_name = os.path.splitext(u[0])
    zip_handler = zipfile.ZipFile(u,"r")
    zip_handler.extractall()
    print("Unzipping File #",i,"Complete")

首先,修复您的dir_name表达式,因为它当前无法正常工作,因为它会将u的第一个字母传递给splitext而不是使用u的基数

dir_name = os.path.splitext(u)[0]

然后,将多余的path参数传递给extractall

zipfile.ZipFile.extractall(path=dir_name)

如果dir_name不存在,则创建它(使用Python 3.4测试)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM