统计磁盘上不同类型文件的数量并用条形图显示

使用python语言统计磁盘上不同文件类型的数量,并使用matplotlib的条形图显示,代码如下:

#根据扩展名统计磁盘上文件的数量

import matplotlib.pyplot as plt
import matplotlib
import os
# 设置matplotlib正常显示中文和负号
matplotlib.rcParams['font.sans-serif']=['SimHei']   # 用黑体显示中文
matplotlib.rcParams['axes.unicode_minus']=False     # 正常显示负号


#遍历字母A到Z,忽略光驱的盘符
roots=[]
for i in range(65,91):
    vol = chr(i) + ':'
    if os.path.isdir(vol):
        roots.append(vol)
        print(vol)
ext2countMap={} #存放扩展名->数量 的字典
count=0;
for root, dirs, files in os.walk("c:\\", topdown=False):    
    for name in files:
        extName=os.path.splitext(name)[1]    #获取扩展名
        #print(extName)
        if extName in ext2countMap:
            ext2countMap[extName]=ext2countMap[extName]+1
        else:
            ext2countMap[extName]=1
        count=count+1
    print(count)
ext2countList = sorted(ext2countMap.items(),key=lambda x:x[1],reverse=True)  # 按字典集合中,对数量进行排序
print(ext2countList)
extNames=[]  #存放扩展名
counts=[]    #存放扩展名对应的文件数量
for item in ext2countList:
    extNames.append(item[0])
    counts.append(item[1])

plt.bar(extNames[0:15],counts[0:15]) #截取数量最多的15个
# 显示横轴标签
plt.xlabel("扩展名")
# 显示纵轴标签
plt.ylabel("数量")
# 显示图标题
plt.title("文件类型TOP15(共计"+str(count)+")个文件")
plt.show()

运行结果如下:

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值