Python:比较同一目录中的文件名和文件夹名

Python:比较同一目录中的文件名和文件夹名,python,Python,我有一个包含很多zip文件的文件夹,并且为相同的文件提取了文件夹。 文件夹已变得如此密集 有没有办法将压缩文件名与同一目录中提取的文件夹名进行比较 如果解压缩的文件夹在同一目录下有.zip文件,我想删除这些文件夹。希望能有所帮助 import os import shutil for file in os.listdir(path_to_dir): if os.path.isdir(file + ".zip"): shutil.rmtree(file) 您可以尝试以下

我有一个包含很多zip文件的文件夹,并且为相同的文件提取了文件夹。 文件夹已变得如此密集

有没有办法将压缩文件名与同一目录中提取的文件夹名进行比较

如果解压缩的文件夹在同一目录下有.zip文件,我想删除这些文件夹。

希望能有所帮助

import os
import shutil

for file in os.listdir(path_to_dir):
    if os.path.isdir(file + ".zip"):
        shutil.rmtree(file)

您可以尝试以下方法:

import shutil
from os import listdir
from os.path import isfile, join, isdir

directories = [d for d in listdir('./') if isdir(join('./', d))]

files = [f for f in listdir('./') if isfile(join('./', f)) and '.zip' in f]


# print(directories)
# print(files)

for d in directories:
    for f in files:
        if f == d + '.zip':
            shutil.rmtree(d)

请注意,如果目录包含子目录和/或文件,则需要使用类似于
shutil.rmtree(d)

os.remove
不会删除目录。它将抛出一个错误。您是否运行并测试了代码?总的来说,它看起来可疑。这样很容易获得反对票。