python办公自动化之分析日志文件

实现效果:根据关键字xx搜索关键字在日志的占比        

前提:把日志保存到txt文件里

代码:

# 读取准备好的日志文件log_file
log_file='log_file.txt'
with open(log_file,'r') as logfile:text=logfile.readlines()
# 设置搜索的关键字:error
search_term='error'
# 报错的行数
error_lines=[line for line in text if search_term in line]
# 统计总行数和error行数
total_lines=len(text)
count_error=len(error_lines)
error_rate=(count_error/total_lines)*100
# 保留2位小数
rate=format(error_rate,'.2f')print(total_lines)
print(count_error)
print(f'{rate}%')
# 把统计的结果写进日志文件
with open('log_file.txt','a') as file:file.write('\n'f'日志文件一共有{total_lines}行')file.write('\n'f'日志文件的error率是{rate}%')
file.close()

代码效果(有多行是因为我在调试中运行了多次代码)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/42850.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

相机,手机,行车记录仪及监控视频修复软件: Stellar Repair for Video

天津鸿萌科贸发展有限公司是 Stellar 系列数据恢复软件的授权代理商。 Stellar Repair for Video 是一款强大的工具,用于修复从主流相机品牌(如佳能、尼康、索尼)、行车记录仪、监控录像机、手机和其他视频设备拍摄的无法访问和损坏的视频。…

下载linux的吐槽

本来这几天放假了,想下一个linux玩一玩 教程(我就是根据这个教程进行下载的,但是呢在进行修改BIOS 模式的 地方遇见了困难,也许是电脑修过的原因,我狂按F12 以及 FnF12都没有BIOS设置,只有一个让我选择用w…

面向过程编程详解

目录 前言1. 面向过程编程的定义2. 面向过程编程的特点2.1 过程和函数2.2 顺序执行2.3 全局变量2.4 控制结构 3. 面向过程编程的应用场景3.1 系统级编程3.2 科学计算3.3 小型项目 4. 面向过程编程的优缺点4.1 优点4.2 缺点 5. 代表性的编程语言5.1 C语言5.2 Pascal5.3 Fortran …

PHP数据结构之栈

本文由 ChatMoney团队出品 栈(Stack)是一种后进先出(Last In First Out, LIFO)的数据结构,它只允许在一端(称为栈顶)进行插入和删除操作。栈的应用非常广泛,例如在编程语言的函数调用…

LLM推理优化技术方向小结

LLM推理优化我认为总共可以分为以下几个方面: 优化KV Cache MQAGQAMLA调度 Continuous batchingKIMI的调度系统Mooncake魔改模型结构或者魔改 attention 计算 MOE架构flash attentionpaged attention量化 AWQGPTQ其他角度 一次解码 n 个 token 来尽可能充分利用子回…

wget pip git下载失败报错解决

文章目录 前言wgetpipgit 前言 三种常用的工具wget pip git下载失败报错解决 wget wget身份认证报错: ERROR: cannot verify sourceforge.net’s certificate 解决: 增加 --no-check-certificate 选项 配置代理后wget报错: Proxy tunneli…

PMP 认证权威吗?对项目…业生涯的发展有帮助?

PMP认证到底权威吗? 首先在我看来,PMP认证是否权威要从各个角度进行综合考虑。入行这么多年个人也有不少的体会,那么我们就从多个角度进行分析一下,PMP认证的权威性与促进方面。 在深入探讨这个话题前,我分享一下近期…

DDR3 (四)

1 DDR3 8倍预取 DDR3相比DDR2外部IO时钟又提高了一倍,因此DDR3外部IO时钟是内核时钟的4倍,再加上双沿采样,因此DDR3可以实现8倍预取 2 DDR3 芯片位宽 DDR3使用8倍预取技术,指的是芯片位宽(DQ数据线位宽&#xff09…

智慧产业应用实训实践基地-信息类专业实践实验室-嵌入式、物联网、移动互联网、云计算、大数据、人工智能、区块链实训室

智慧产业实践基地面向信息类专业群,以智慧灯杆、智慧交通、智慧设施在智慧产业中的实际实践为项目原型,软硬件开源、开放,海量的技术资料和实训课程。整个系统运用了嵌入式、物联网、移动互联网、云计算、大数据、人工智能、区块链等综合交叉…

uniapp中微信小程序——蓝牙连接并通信

蓝牙连接并与设备进行通信 已下是我在实现蓝牙功能中使用到的所有Api,当然微信小程序中还有很多我没有用到的Api,如果下面没有满足你需求的Api可以去官方文档查看。 初始化蓝牙模块 openBluetoothAdapter 开始搜寻附近的蓝牙外围设备。 startBluetoot…

Python爬虫开发实战,房屋售价数据分析,案例教程编程实例课程详解

一、引言 在当今信息爆炸的时代,数据已成为决策的重要依据。对于房地产市场而言,了解房屋售价的变动趋势、价格分布以及影响房屋售价的因素等,对于购房者、开发商以及政府政策制定者都具有重要意义。本文将通过Python爬虫技术,爬取房地产网站上的房屋售价数据,并进行深入的…

收藏!2024年程序员的实用神器_new relic idea

前言 Chat GPT的升级节奏让人们越来越惊讶的同时,也让大家感觉到了压力,在如此快节奏的互联网世界中,开发人员需要不断学习与更新知识,保持领先地位并高效地交付高质量软件。 无论是集成开发环境 (IDE)、版本控制系统、测试工具…

解决selenium手动下载驱动问题

解决selenium手动下载驱动问题 每次都需要手动下载驱动很头疼,今天发现一个可以自动下载最新驱动的包webdriver_manager,挺不错的 安装依赖包 pip install selenium pip install webdriver_manager from selenium import webdriver from selenium.webdr…

开源网安入选全景图,成为唯一覆盖“开发安全”全领域厂商

​7月4日,知名网络安全媒体数说安全正式发布了《2024年中国网络安全市场全景图》,本次全景图共收录了408家国内优秀的网络安全企业,旨在为网络安全行业主管部门、从业者、产品及服务的使用者和购买单位以及资本机构提供全面、精准且具参考价值…

14-52 剑和诗人26 - RAG 和 VectorDB 简介

检索增强生成 (RAG) 和 VectorDB 是自然语言处理 (NLP) 中的两个重要概念,它们正在突破 AI 系统所能实现的界限。 在这篇博文中,我将深入探讨 RAG,探索其工作原理、应用、优势和局限性。 我们还将研究 VectorDB,这是一种专用于向…

C语言学习笔记[22]:分支语句switch

switch语句 switch语句也是一种分支语句,常用于多分支的情况 switch语句的语法形式是: switch(整型表达式) {语句项; }而语句项是什么呢? case 整型常量表达式:语句; switch语句中的break 对于case 语句来说,我们day输入的多…

基于大数据技术Hadoop的气象分析可视化大屏设计和实现

博主介绍:硕士研究生,专注于信息化技术领域开发与管理,会使用java、标准c/c等开发语言,以及毕业项目实战✌ 从事基于java BS架构、CS架构、c/c 编程工作近16年,拥有近12年的管理工作经验,拥有较丰富的技术架…

如何处理 PostgreSQL 中由于表锁定导致的并发访问问题?

文章目录 一、表锁定的类型二、表锁定导致的并发访问问题三、解决方案(一)使用合适的锁定模式(二)优化事务处理(三)避免不必要的锁定(四)使用索引(五)监控和分…

使用GZip对npm run build打包的vendor.js文件进行压缩

vue-cli项目 安装npm i compression-webpack-plugin -D npm i compression-webpack-plugin -D使用:在vue.config.js文件中 const CompressionPlugin require(compression-webpack-plugin) module.exports {configureWebpack: {plugins: [new CompressionPlugin…

使用umi的history为url路由添加一个query参数,保留原本的querystring追加新参数

import { history } from umi;// 假设你想添加一个名为"newParam"的query参数,值为"newValue" function addQueryParamToUrl(paramName, paramValue) {const { search, pathname } history.location;const newSearchParams new URLSearchPara…