如何在Python中解压文件,但保持压缩折叠

2024-04-29 15:42:07 发布

您现在位置:Python中文网/ 问答频道 /正文

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

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

folder1.zip:文件1

folder2.zip:文件2

我希望文件的结尾如下:

会议\文件夹1\文件1

会议\文件夹2\文件2

目前,程序将这两个文件放入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")

Tags: 文件程序文件夹名称结尾fileszip会议
1条回答
网友
1楼 · 发布于 2024-04-29 15:42:07

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

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

然后,将额外的path参数传递给extractall

^{pr2}$

如果dir_name不存在,则创建它(用python3.4测试)。在

相关问题 更多 >