首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ZipFile将所有父目录放入新创建的zip文件中。

ZipFile将所有父目录放入新创建的zip文件中。
EN

Stack Overflow用户
提问于 2022-05-17 00:57:08
回答 1查看 49关注 0票数 1

我想要创建一个few文件从选定的几个单独的文件。到目前为止,我的代码如下:

代码语言:javascript
复制
from zipfile import ZipFile
from os import walk

name = 'Mia'

allFiles = next(walk("C:\\Users\\jack_l\\Documents\\Image-Line\\FL Studio\\Projects\\finished\\UPLOAD"), (None, None, []))[2]

allStemFiles = []

for counter in range(len(allFiles)):
    if str('STEMS - '+name) in allFiles[counter]:
        allStemFiles.append(allFiles[counter])

myZipFile = ZipFile(r'C:\Users\jack_l\Documents\Image-Line\FL Studio\Projects\finished\UPLOAD\beatTitle.zip', 'w')

for counter in range(len(allStemFiles)):
    myZipFile.write('C:\\Users\\jack_l\\Documents\\Image-Line\\FL Studio\\Projects\\finished\\UPLOAD\\'+allStemFiles[counter])

myZipFile.close()

我的问题是,它确实在正确的目录(C:./UPLOAD)中创建了一个the文件,但是它创建的the文件包含了文件上的8层文件夹。就像zip文件包含一个名为User的文件夹,其中包含一个名为jack_l的文件夹,等等,直到一个名为UPLOAD的文件夹包含了我的文件。

我试图通过写作来解决这个问题:

代码语言:javascript
复制
myZipFile.write(allStemFiles[counter])

而不是:

代码语言:javascript
复制
myZipFile.write('C:\\Users\\jack_l\\Documents\\Image-Line\\FL Studio\\Projects\\finished\\UPLOAD\\'+allStemFiles[counter])

但是,我得到了以下错误:

任何帮助都将不胜感激。只是为了重新迭代;我想要一个the文件只包含这些文件(没有任何文件夹)。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-17 01:15:44

您可以将工作目录更改为要首先存档的文件的基本目录,这样所有路径都会相对于基目录:

代码语言:javascript
复制
from zipfile import ZipFile
import os

name = 'Mia'

os.chdir("C:\\Users\\jack_l\\Documents\\Image-Line\\FL Studio\\Projects\\finished\\UPLOAD")

allFiles = next(os.walk("."), (None, None, []))[2]

allStemFiles = []

for counter in range(len(allFiles)):
    if str('STEMS - '+name) in allFiles[counter]:
        allStemFiles.append(allFiles[counter])

myZipFile = ZipFile('beatTitle.zip', 'w')

for counter in range(len(allStemFiles)):
    myZipFile.write(allStemFiles[counter])

myZipFile.close()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72267108

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档