passself 2022-04-18 11:27 采纳率: 42.9%
浏览 171
已结题

python读取多文件搜索关键字,速度优化问题

python读取多文件搜索关键字,速度优化问题

现在的方式是传统的 with open file:

readlines 然后 每行用__contains__(关键字)

大约20多个关键字,搜索10w个文件,需要的时间是17分钟。

佬们有没有优化的方式,意见建议都行哈

  • 写回答

14条回答 默认 最新

  • 不会长胖的斜杠 新星创作者: 后端开发技术领域 2022-04-18 11:35
    关注
    获得1.00元问题酬金

    主要耗费时间是IO上,你看是否能把文件融合,达到减少IO的效果,如果不能减少数量的话,总体速度还是不够快
    如果不能减少数量,建议减少文件存储方式
    1.存储数据库
    2.使用其他格式,例如:假如是数组,改用为npy文件存储,速度会快很多
    3.如果是频繁读取,例如CS模式,可以将采取数据服务器一直将文件内容存在内存,就避免了IO操作

    其次,匹配关键字用的是啥函数?可以试试map,应该也会提速

    望采纳~

    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 4月26日
  • 赞助了问题酬金20元 4月18日
  • 创建了问题 4月18日