如何删除一个文件夹中我要保留的一个或两个文件夹以外的所有内容?

时间:2019-06-12 07:31:22

标签: python

我有一个文件夹“ Folder1”,其中包含文件和文件夹,例如“ file1”,“ file2”,“ Folder11”,“ Folder12”,“ Folder13”等。我只想保留“ Folder11”和“ Folder12”,并删除其余的这些事。我需要帮助来编写相同的python脚本。

1 个答案:

答案 0 :(得分:0)

您可以使用os module遍历目录中的每个项目和文件夹并将其删除。您还可以定义包含特定项目(例如文件夹名称)的列表,以防止其被删除。请记住,如果要防止删除文件,还必须添加其格式(例如文本文件的“ .txt”)。

通常,删除文件时要小心。也许您想在os.remove()之前添加一张支票,或者首先将其替换为打印语句(print(item)),以便查看要删除的内容。

import os  # Import the os module

working_directory = r"C:\Users\Vishwesh\Folder1"

retain = ["Folder11", "Folder12", "file1.txt", "file2.txt"]

os.chdir(working_directory)  # Change directory to your folder

# Loop through everything in folder in current working directory
for item in os.listdir(os.getcwd()):
    if item not in retain:  # If it isn't in the list for retaining
        os.remove(item)  # Remove the item