统计文件名出现次数 python学习 os模块 列表统计

因为我们同一个文件夹里的文件不能重名,因此我们有时候的文件命名格式就如这样:“jdt_fit_1”“jdt_test_2”……

如果要统计一种文件名出现的总次数(例如:jdt_fit_1、jdt_fit_2、jdt_test_1 为 jdt_fit出现次数2 jdt_test出现次数1),下面记录这种统计方式。

原文件夹里的部分内容如图:

统计文件名出现次数 python学习 os模块 列表统计_第1张图片

一、代码

如需使用,请将代码里的dirs=r'data'改为自己的文件夹路径名,并将代码文件与目标文件夹放在同一目录下。

import os


def getname(a):
    flag=0
    c=0
    a=list(a)
    for i in range(1,10):
        if flag==0:
            for item in a:
                if item==str(i):
                    c=a.index(item)-1
                    flag=1
                    break
    if c==0:
        c=a.index('.')
    if a[c-1]=='_':
        c=c-1
    name=''.join(a[0:c])
    return name
#如果有数字,如jdt_test1、jdt_fit2 则获取文件名数字前的部分 如果没有数字,就获取".(csv/doc/py/……)"前的文件名


dirs=r'data'
mylist=os.listdir(dirs)
#获取所有文件名


filename=[]
for x in mylist:
    y=getname(x)
    if filename.count(y)==0:
        filename.append(y)
#将不带序号的文件名存入列表


for x in filename:
    count=0
    for y in mylist:
        if getname(y)==x:
            count=count+1
    print(x+' 共出现'+str(count)+'次')
    
    
    
    

二、结果

统计文件名出现次数 python学习 os模块 列表统计_第2张图片

测试成功 

你可能感兴趣的:(python,python,列表)