本文介绍基于Python语言,统计文件夹中文件数量;若其含有子文件夹,还将对各子文件夹中的文件数量一并进行统计的方法。

  最近,需要统计多个文件夹内部的文件数量,包括其中所含子文件夹中的文件数量。其中,这多个需要统计文件数量的文件夹都放在一个总文件夹内。

  这一操作基于Python来实现是非常方便、快捷的。话不多说,我们对相关的Python代码来进行详细介绍。

import os
target_path='H:/2020/'
all_content=os.listdir(target_path)
print('All content numbers is',len(all_content))
count_num=1
for content in all_content:
    if os.path.isdir(target_path+content):
        all_sub_content=os.listdir(target_path+content)
        if len(all_sub_content)!=361:
            print(count_num,content,'sub content number is',len(all_sub_content))
            count_num=count_num+1

  可以看到,代码是非常非常简洁的。

  首先,target_path是我们的总文件夹路径,用os.listdir来获取总文件夹下面的全部内容(包括文件与子文件夹),并打印总文件夹下全部内容的数量(包括文件与子文件夹数量)。随后,用if判断与isdir函数来获取总文件夹下的全部子文件夹,并对子文件夹依次利用同样的方式来获取其内部文件的数量,并打印出来。

  其中,上述代码的以下部分:

        if len(all_sub_content)!=480:
            print(count_num,content,'sub content number is',len(all_sub_content))
            count_num=count_num+1

  是我为了方便,直接对不满足文件个数为480的子文件夹加以筛选,从而只输出文件个数非480的子文件夹名称;如果大家只是需要对每一个文件夹或子文件夹中的文件个数加以统计而不需要进行筛选,将这一部分的if判断语句去掉就可以啦~

  最后,可以看到上述代码我是直接将结果打印出来的;如果实际情况中文件或文件夹数量很多,大家需要将结果输出到.csvExcel文件中的话,可以直接参考Python TensorFlow深度学习回归代码:DNNRegressor的2.9部分,这里就不再赘述啦。

发表回复