Python中的Zip结构尝试仅读取文件夹

时间:2019-05-08 13:38:06

标签: python

Python的新手,这是我遇到的一个有趣的问题,它试图解决zip文件以使用文件夹标识顶级目录。我不知道如何将单词组合在一起才有意义。我将编写一个伪代码来给您感觉。

for folders in Zipfile.namelist():
    if /zipfile/1folder1/:
          return PASS
    elif:
       /zipfile/1folder1/
       /zipfile/1folder2/
       /zipfile/1folder1/2folder1/
          return FAIL

我有兴趣阅读文件夹名称,而不是文件名称。我尝试了reduce()方法,但无济于事,因为它会一直到我不需要的最低级别的文件夹。我只需要顶层文件夹或第一个文件夹,如/ zipfile / 1folder1 /。它只能是一个文件夹,而不是顶层目录中的多个文件夹。

我无法找到一种方法来读取文件夹并创建for循环迭代来检索索引值以确定顶层目录中的文件夹数。

谢谢!

1 个答案:

答案 0 :(得分:0)

我找到了解决方法。包括os.sep.split方法在内的.keys完成了技巧并执行了迭代。

for folders in Zipfile.namelist()[1:]:
   seps = len(folders.split(os.sep))
   if seps > 2:
      if seps not in dir_count.keys():
         count[seps] = 0
         count += 1
      if count[seps] > 1:
         raise exception