我试图获取所有目录中列出的所有文件的数量以及各个目录中的文件数。下面是我的代码,以获取所有目录中的文件总数,但我无法获得如何在单个目录中获取计数。有人可以帮忙吗?
N = 0 #Total count of number of files in all directories
N_c = 0 #Number of documents in each class
for dirpath, dirnames, filenames in os.walk(filePath):
for filename in [f for f in filenames]:
files = [os.path.join(dirpath, filename)]
for f in files:
N+=1
答案 0 :(得分:0)
你工作太辛苦了。你有一个文件名列表,只需要它的长度。我不知道你的意思是“单个目录中的文件数”,所以我只是打印它们。
N = 0 #Total count of number of files in all directories
# what is this supposed to be?
# N_c = 0 #Number of documents in each class
for dirpath, dirnames, filenames in os.walk(filePath):
N += len(filenames)
print("Files in", dirpath, len(filenames)
print("Total files", N)
答案 1 :(得分:0)
在 user7737327 回答:
您无需迭代dirpath
和for d in dirpath
filenames
包含当前目录中所有文件的列表。
我们可以使用文件名的长度来获取当前目录中的文件数。
N = 0 # total files
for dirpath, dirnames, filenames in os.walk(file_path):
N_c = len(filenames)
N += N_c
print "Files in ", dirpath, N_c
print "Total Files ",N