我想解压缩一个zip文件,并想将单个文件复制到不同的文件夹中。
让我们举个例子,我有一个名为“ Feeds.zip”的zip文件。在那我有3个文件名为A,B,C。我想将这3个文件分别复制到不同的文件夹A1,B1,C1中。
我写了下面的代码来解压缩文件,并知道如何提取所有文件。但是如上所述,我的要求有些不同。
with zipfile.ZipFile('C:/Feeds.zip', "r") as z:
z.extractall("C:/Desktop/")
请帮助。
答案 0 :(得分:2)
使用<div class="edit-user-modal-form__input">
<input class="md-input__input__container-text" placeholder="Name" type="text">
</div>
来获取所有成员的名称,而不是使用extractall
,然后遍历它们并使用namelist
将它们提取到所需的任何路径。
在您的示例中:(其中文件夹是字面 extract(member, path)
,A1
,B1
)
C1
如果文件具有扩展名,并且您不希望它们出现在文件夹名称中,请使用import os.path
with zipfile.ZipFile('C:/Feeds.zip', "r") as z:
for member in z.namelist():
dirname = os.path.basename(member) + "1"
z.extract(member, dirname)
。
当然,您可以将dirname替换为每个文件所需的任何其他文件夹/路径。例如,如果您已经有一个要保存文件的路径数组,则可以
dirname = os.path.basename(member).split('.')[0] + "1"