首页 > 编程语言 >【C#】【Python】【实例】统计多个文件夹下的图片

【C#】【Python】【实例】统计多个文件夹下的图片

时间:2023-09-21 21:25:14浏览次数:41  
标签:name item C# root Python 文件夹 path os

因工作需要繁琐的进行同一目录多个文件夹下的图片统计,便使用代码来解决。

需求:统计的是多少个文件夹包含了图片,并非是统计有多少张图。

 

我们先用Python来创建一个现场环境(巩固巩固py知识):

 1 import os
 2 
 3 # 根目录
 4 root_path = r"C:\Users\Desktop\1111"
 5 
 6 for item in range(1, 20):
 7     # 在root_path下创建19个文件夹,名字是1-19
 8     foldname = os.path.join(root_path, str(item))
 9     os.mkdir(foldname)
10 
11     # 每个文件夹下创建一个jpg图片,并在1文件夹下多创建一张图
12     pic_name = os.path.join(foldname, str(item) + '.jpg')
13     if item == 1:
14         with open(pic_name[:-4] + '1.jpg', 'w'):
15             pass
16     with open(pic_name, 'w'):
17         pass
18 
19     # 每个文件下创建一个txt文本
20     txt_name = os.path.join(foldname, str(item) + '.txt')
21     with open(txt_name, 'w'):
22         pass

 

 

再使用C#(问就是工作环境只有这个)来遍历查找包含图片的文件夹个数:

 1 using System.IO;
 2 
 3 string root_fold = @"C:\Users\彭家屹\Desktop\文案整理\1111";
 4 int count = 0;
 5 
 6 // 遍历获取所有的文件夹
 7 foreach (var item in Directory.GetDirectories(root_fold))
 8 {
 9     // 获取当前文件夹下所有的的图片
10     string[] files = Directory.GetFiles(item, "*.jpg");
11     // 当长度为0时,说明没有图片,否则只执行一次+1操作
12     if (files.Length > 0)
13             count++;
14 }
15 Console.WriteLine(count);

 

至此就能到的所有包含图片的文件夹个数。

 

标签:name,item,C#,root,Python,文件夹,path,os
From: https://www.cnblogs.com/vangoghpeng/p/17720913.html

相关文章

  • 使用Yocto进行嵌入式Linux开发3 Toaster
    3Toaster我们已经知道了如何在Poky中使用BitBake构建图像image,那么我们将学习如何使用Toaster完成同样的操作。3.1什么是Toaster?Toaster是一个用于配置和运行构建的Web接口。它与BitBake和Poky构建系统通信,以管理和收集有关构建、软件包和镜像的信息。使用Toaster的两种方法......
  • docker部署Redis
    标题:mac使用docker运行redis,并且在springboot中使用redis,怎么操作?0-前置配置:在mac下载好Docker:https://www.docker.com/Docker:启动Redis容器:在终端中执行以下命令,以启动Redis容器:终端命令:dockerrun--namemy-redis-p6379:6379-dredis//这......
  • react的todolist
    React的todolistsrc/main.jsximportReactfrom'react'importReactDOMfrom'react-dom/client'importAppfrom'./App.jsx'import'./index.css'ReactDOM.createRoot(document.getElementById('root')).render(......
  • react的todolist拆分项目
    React的todolist的拆分项目TodoList.jsximportTodofrom"./Todo"exportdefaultfunctionTodoList({todos,toggleTodo,deleteTodo}){return<><ul>{todos.map(todo=><......
  • SLC SSD重出江湖!Solidigm D7-P5810正式发布:每天65次全盘写入
    如今的SSD,在闪存介质上早已经是TLC遍地走、QLC越来越多,很多玩家非常怀念当年的MLC,甚至是最初的SLC。原因无它,MLC、SLC的可靠性非常高。快科技9月21日消息,Solidigm宣布推出其首款面向数据中心市场的超高速SLCSSD——D7-P5810。它使用了久经考验的144层堆叠3D闪存,但确切地说并......
  • Swift中发布-订阅框架Combine的使用
    Combine简介Combine是一个苹果用来处理事件的新的响应式框架,支持iOS13及以上版本。你可以使用Combine去统一和简化在处理类似于target-action,delegate,kvo等事情的代码。iOS目前已经有第三方的响应式框架了,如:RxSwift、ReactiveCocoa,但是苹果现在发布了自己的新的框架。它提供......
  • CodeTON Round 6 (Div. 1 + Div. 2, Rated, Prizes!)
    Preface这场因为晚上去做大物实验了,到寝室洗完澡都11点了,就没现场打了的说后面补题发现前5题都很一眼,虽然补题的时候E题FST了(T在了42个点,如果放在比赛就FST了),F题还是很有意思的一个题目的说A.MEXanizedArray简单讨论一下即可#include<cstdio>#include<iostream>#include......
  • java8 新特性之日期时间处理 LocatDate、LocalTime、LocalDateTime、ZonedDateTime、D
    一、LocalDate、LocalTime、LocalDateTime和常用API1、LocalDatepublicvoidtest01(){//1.创建指定的日期LocalDatedate1=LocalDate.of(2021,05,06);System.out.println("date1="+date1);//2.得到当前的日期LocalDate......
  • CF311B Cats Transport
    原题翻译感谢\(xjk\)大佬推荐的好题这里只说前半部分的转化,后半部分直接暴力\(dp\)+斜率优化即可我们考虑如何朴素\(dp\),我们发现一个猫的要求时间是他结束游玩的时间\(-\)他所在的位置,及\(T_i-D_{H_i}\)我们把猫咪按照\(T_i-D_{H_i}\)从小到大排序,可以发现放置一个铲屎......
  • [20230908]Oracle Index Range Scan with LIKE Condition on Wildcard '_'.txt
    [20230908]OracleIndexRangeScanwithLIKEConditiononWildcard'_'.txt--//昨天看链接:http://ksun-oracle.blogspot.com/2023/09/oracle-index-range-scan-with-like.html,当时一下子没有反应过来,--//作者这样查询怎么会有这么大区别呢?仔细看题目才明显原来查询的字符串里面......