计算不同子目录中的文件数

Count number of files in different sub-directory

我正在尝试计算每个子目录中的图像总数。
一个主目录和 300 个子目录,每个子目录有 1 张图像,但下面的代码显示每个目录中的图像数量不同,几乎 20 个子目录应该是 1 张图像。
输出:

图片:0 目录:1
图片:3 目录:2
图片:5 目录:3
等等。但是下面的代码没有显示任何错误。

import os
path='C:/Python36/cclabel/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

正如 Dan Farrell 所建议的,您需要调用函数 count_em。单独编写函数是不行的。你必须打电话给它。将以下内容粘贴在文件末尾,您就可以开始了:

total = count_em(path)
print('Total images: ', total)

您发布的代码不能完全满足您的需求。但是,由于我对您的问题的理解,我对其进行了编辑。希望这就是您所需要的。

import os    
path ="C:/Directory/"

def count_em(path):
    x = 0
    files_count = 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



count_em(path)

编辑:

包含 5 个目录及其子目录和文件的目录的输出:

Images: 0 Directory: 1
Images: 3 Directory: 2
Images: 3 Directory: 3
Images: 5 Directory: 4
Images: 9 Directory: 5
Images: 9 Directory: 6
.
.
.
.
.
Images: 84 Directory: 44
Images: 88 Directory: 45
Images: 90 Directory: 46
Images: 90 Directory: 47
Images: 90 Directory: 48
Images: 94 Directory: 49