Python小用处---通过目录遍历统计文件类型数量

Python目录遍历统计文件类型数量

os 的 walk 函数

通过目录路径遍历文件

os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

top 参数

需要遍历的目录的地址, 返回的是一个三元组(root,dirs,files)。

  • root 所指的是当前正在遍历的这个文件夹的本身的地址
  • dirs 是一个 list ,内容是该文件夹中所有的目录的名字(不包括子目录)
  • files 同样是 list , 内容是该文件夹中所有的文件(不包括子目录)

topdown 参数

True,则优先遍历 top 目录,否则优先遍历 top 的子目录(默认为开启)。

如果 topdown 参数为 True,walk 会遍历top文件夹,与top 文件夹中每一个子目录。

followlinks 参数

可选,如果为 True,则会遍历目录下的快捷方式

os.path.splitext 函数

将参数名分割为两部分文件名以及扩展名称,并将二者进行返回

通过os 的 walk 函数遍历文件目录获得文件名,使用 os.path.splitext 分割文件名获得文件后缀进行分类

import os
# 设置文件路径
file_dir = r'D:\markdown'
typeList = ['.md','.csv','.pdf','.txt','.png','.html','.tex']
typeCount = [0,0,0,0,0,0,0]
index = 0
print(type(typeCount))
for root,dirs,files in os.walk(file_dir):
    for file in files:
        index = typeList.index(os.path.splitext(file)[1])
        typeCount[index] = typeCount[index] + 1 
        print(root)
        print(dirs)
        print(files)
print(typeCount)
# [86, 0, 4, 0, 3, 1, 1]
posted @ 2021-01-24 01:10  沃特艾文儿  阅读(48)  评论(0)    收藏  举报  来源