【发布时间】:2021-04-22 09:47:04
【问题描述】:
我的 scipt 正在搜索 zip 文件、解压缩并做我想做的事情。但是当我在 zip 文件中嵌套了 zip 文件时会出现问题,所以我想也许我复制了工作 if 语句,进行了一些调整,但我仍然无法让它工作。
print('Searching for ZipFiles')
for file in os.listdir(working_directory):
zfile = file
if zfile.endswith('.zip'):
# Create a ZipFile Object and load sample.zip in it
with ZipFile(zfile, 'r') as zipObj:
# Get a list of all archived file names from the zip
listOfFileNames = zipObj.namelist()
# Iterate over the file names
for fileName in listOfFileNames:
zipObj.extract(fileName, './temp')
maincom() #until here, my script is working, below is the new IF statement
if fileName.endswith('.zip'):
for file in os.listdir('.'):
zfile = file
if zfile.endswith('.zip'):
# Create a ZipFile Object and load sample.zip in it
with ZipFile(zfile, 'r') as zipObj:
# Get a list of all archived file names from the zip
listOfFileNames = zipObj.namelist()
# Iterate over the file names
for fileName in listOfFileNames:
zipObj.extract(fileName, '')
maincom()
我想要实现的是简单地解压缩当前目录中的嵌套zip文件,运行maincom(),如果可能,可能在解压缩完成后删除嵌套的zip文件
谢谢大家
【问题讨论】:
-
首先,我认为你应该学会使用递归。
-
好的,让我看看