如何删除Python 3中除一个特定文件夹之外的所有文件夹

2024-09-25 12:32:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图写一个脚本,删除所有无用的文件夹,除了一个。我在许多论坛上搜索了一个解决方案,但没有任何效果

我想删除./Desktop/D中的所有内容,我想保留的文件夹是./Desktop/D/ksg

这是我想到的,但它只删除了/D中的所有内容。谢谢你的帮助

import os
from pathlib import Path

def ordnerdelete(pfad):
    for path in Path(pfad).rglob("ksg"):
        if (pfad != path):
            for f in os.listdir("./Desktop/D/./."):
                os.remove(os.path.join("./Desktop/D/./.", f))
            os.rmdir(pfad)
    print(pfad, "gelöscht")


programm = "./Desktop/D/."

ordnerdelete(programm)

Tags: pathinimport脚本文件夹内容foros
1条回答
网友
1楼 · 发布于 2024-09-25 12:32:58

如果有人需要的话,我自己解决了

import os 
import shutil
from pathlib import Path 


pfad = Path("./Desktop/D/.")
projekt = "ksg"
liste = os.listdir(pfad)

for f in liste:
    if f != projekt:  
        try:
            shutil.rmtree(os.path.join(pfad, f))
        except OSError as e:
            print("Error: %s : %s" % (f, e.strerror))

相关问题 更多 >