用python获取txt文件中关键字的数量

 更新时间:2020年12月24日 11:19:10   作者:待時而傾  
这篇文章主要介绍了如何用python获取txt文件中关键字的数量,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下

缘起:

  开发人员需要tomcat中一个项目在一个月的访问请求量,因其他原因只剩下查找tomcat请求日志的方法获取,刚好最近在学习python,于是就用python摸索了下;

大体思路:

                  1.把相应tomcat的日志文件拷到有python环境的机器

     2.用os.listdir()获取到目录下所有文件名称的列表,再用for循环遍历列表加上字符串拼接得到已文件名的具体路径

     3.用open()读取文件,下面代码中for line in f:是按行读取txt文件的内容(一行一行的读,不会加载全部文件内容)

     4.用count()方法统计以项目为名的关键字(字符串)

知识点:

文件的读取和count()方法

  Python count() 方法用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。

  count()方法语法:str.count(sub, start= 0,end=len(string))

  参数:

  • sub -- 搜索的子字符串
  • start -- 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。
  • end -- 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置。

代码如下

(如果文件过多可以加工作队列(gevent库)):

import os

# 打開日誌文件并计数
def read_log(url,keyword):
  count = 0
  with open(url,'r',encoding='utf-8') as f:  # 打开文件
  for line in f:                  # 按行读取txt文件
    count += line.count(keyword,53,64)  # count()方法计数,keyword为传入的关键字(字符串)
return count

path= 'E:\\python\\vscode\\工作\\log\\80\\'
dirlist = os.listdir(path)  # 获取path路径下的所有txt文件名

sum = 0
for name in dirlist:       # 遍历获取txt文件名
  url = path + name
  num = read_log(url,keyword)
  print(str(name) + ' 文件中个数为: ' + str(num))
  sum += num
print('关键字总个数: ' + str(sum))

以上就是用python获取txt文件中关键字的数量的详细内容,更多关于python 获取关键字的资料请关注脚本之家其它相关文章!

相关文章

  • Anaconda使用IDLE的实现示例

    Anaconda使用IDLE的实现示例

    这篇文章主要介绍了Anaconda使用IDLE的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • Python根据输入参数计算结果的实例方法

    Python根据输入参数计算结果的实例方法

    在本篇文章里小编个大家整理了一篇关于Python根据输入参数计算结果的实例方法,有兴趣的朋友们可以跟着学习参考下。
    2021-08-08
  • Python使用while循环花式打印乘法表

    Python使用while循环花式打印乘法表

    今天小编就为大家分享一篇关于Python使用while循环花式打印乘法表,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • 彻底弄懂Python中的回调函数(callback)

    彻底弄懂Python中的回调函数(callback)

    回调函数就是一个通过函数指针调用的函数,下面这篇文章主要给大家介绍了关于Python中回调函数(callback)的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-06-06
  • PyQt通过动画实现平滑滚动的QScrollArea

    PyQt通过动画实现平滑滚动的QScrollArea

    这篇文章主要为大家详细介绍了PyQt如何使用Qt的动画框架 QPropertyAnimation来实现平滑滚动的QScrollArea,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的可以学习一下
    2023-01-01
  • OpenCV2.3.1+Python2.7.3+Numpy等的配置解析

    OpenCV2.3.1+Python2.7.3+Numpy等的配置解析

    这篇文章主要介绍了OpenCV2.3.1+Python2.7.3+Numpy等的配置解析,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • Django更新models数据库结构步骤

    Django更新models数据库结构步骤

    这篇文章主要介绍了Django更新models数据库结构的操作步骤,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • pandas的drop_duplicates无法去重问题解决

    pandas的drop_duplicates无法去重问题解决

    在我们利用Pandas进行数据清洗的时候,往往会用到drop_duplicates()进行去重,本文主要介绍了pandas的drop_duplicates无法去重问题解决,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • python添加模块搜索路径方法

    python添加模块搜索路径方法

    下面小编就为大家带来一篇python添加模块搜索路径方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • Python实现的字典排序操作示例【按键名key与键值value排序】

    Python实现的字典排序操作示例【按键名key与键值value排序】

    这篇文章主要介绍了Python实现的字典排序操作,结合实例形式分析了Python针对字典分别按照键名key与键值value进行排序的相关操作技巧,需要的朋友可以参考下
    2018-12-12

最新评论