根据If条件删除当前目录 [英] Delete a current directory based on If condition

查看:59
本文介绍了根据If条件删除当前目录的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

以下代码计算每个子目录中的图像数。如果子目录中的图像大于2,如何删除子目录。

n13是主目录 =>,其中具有 300个子目录(1 .. .300) =>每个子目录都有图片

Following code counts number of image in each sub directory. how to delete a sub directory if images in sub-directory are more than 2.
n13 is main directory=> which have 300 sub-directories(1...300)=> each sub-directory have images.

输出:

图片:2,目录:1

图片:3,目录:2

图片:4,目录:3

output:
Images:2, Directory:1
Images:3, Directory:2
Images:4, Directory:3

import os
path='C:/n13/'
def count_em(path):
    x = 0
    for root, dirs, files in os.walk(path):
       files_count = (len(files))
       x = x + 1
       print("Images:",files_count,"Directory:",x)
    return files_count


推荐答案

您可以使用 shutil.rmtree()删除包含其子目录和文件的文件夹。

You can use shutil.rmtree() to delete a folder with its sub-directories and files.

import os
import shutil

path='C:/n13/'

def count_em(path):
    x = 0
    files_count = 0
    for root, dirs, files in os.walk(path):
        files_count = (len(files))
        if files_count >= 2:
            shutil.rmtree(root)
        x = x + 1
        print("Images:", files_count, "Directory:", x)
    return files_count


count_em(path)

这篇关于根据If条件删除当前目录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆