栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python小程序(大量文件查询)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python小程序(大量文件查询)

今天班级中统计成员谁没有上传申报表这个文件的时候苦不堪言,因为数量大,每个人都有教室并且个人的文件夹,所以需要进行频繁的点击和切换,这实在是无聊乏味,于是一个基于python的文件查询小程序就破壳而出了!

首先先看效果:

 然后我随机抽取其中一位看看他文件有没有申报表这个文件:

可以可以

首先说下思路:

因为是对文件进行操作,所以使用os第三方库,其次还有需要对每个文件的名称进行分词,所以使用了jieba

因为目标文件夹中细分了七大类,所以我们首先要将目标文件中的目录打印出来,然后进行下一步操作:

path = "C:/Users/1/Desktop/互联网+/"
c =os.listdir(path)

使用os.listdir 我们可以获取到目标文件夹下的所有子文件夹的列表:

然后我们进行选择:

word = input("请输入你想查询的文件夹名:")
d = os.listdir(path + word)

获取子文件夹中的所有目录,也就是每个人的目录 :

然后获取每个人文件夹下的文件名称:

for i in d:#每个工坊人的文件夹
    contents = os.listdir(path + word + "/"+ i)#每个人的两个文件

 并进行分词操作,因为需要对文件名进行匹配,如果不符合自己设定的关键词,则会进行不符操作:

 content = jieba.lcut(y)#将每个文件名进行分词

不符操作:

        if "申报表" not in content:
            count += 1
    if counts-count == 0:
        print(i)

这是自己创建的一个社区,平时可以在里面进行学习打卡、交流,不定时会进行资料分享:

知识星球 | 深度连接铁杆粉丝,运营高品质社群,知识变现的工具 (zsxq.com)

在这里需要提一点的是,因为每个人的文件夹中有两个或者多个文件,所以需要在分词前,对文件夹总数进行计数,然后如果不匹配的话给不符合的文件计数,再用总数减去不符合文件夹的数量,如果等于零的话,说明这个成员的已经上传了,如果不等于零,说明他没有上传;在这里可以根据自己的需求设定值,并进行计算。

OK,接下来就是源码:

import jieba
import os

path = "C:/Users/1/Desktop/互联网+/"
c =os.listdir(path)
word = input("请输入你想查询的文件夹名:")
d = os.listdir(path + word)
print(d)
for i in d:#每个工坊人的文件夹
    contents = os.listdir(path + word + "/"+ i)#每个人的两个文件
    counts = 0
    count = 0
    for y in contents:
        counts += 1#记录每个人的文件数
        content = jieba.lcut(y)#将每个文件名进行分词
        if "申报表" not in content:
            count += 1
    if counts-count == 0:
        print(i)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/674988.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号