【办公类-52-01】20240703计划小结的缩略版制作(获取字符最多的3个字,删除字后面的内容)

背景需求:

每学期写完“信息计划”“信息小结”都需要上传园所“圆圆通”的信息公开,领导要求使用缩略版(就是删掉一些内容,不能整篇都发布出去,以免被抄袭?)

2023年第二学期的信息小结有16页

通常使用方法:

1、手动删除段落

可以从头到尾手动删除,一年只要删两次。

但是当时我需要对15条线路的计划小结(30份)进行缩略,我觉得全部手动删除,很繁琐。

2、使用“的*^13”替换成“……^p 的方法

于是网上搜索使用“的*^13”替换成“……^p 的方法,(把一段里面“的”后面的所有文字都删除,“的”改成省略号加回车)提高了删除的速度

不过这个也有一个问题,就是我需要预估,哪些字出现比较多,比如“的”“工会”“是”,删除的内容不够多。就需要再次输入词语进行替换。比较繁琐。

程序设计:

所以我想用代码来进行文章内汉字的数量出现的排序,,然后将数量最多的几个字作为替换内容

显示出现数量最多的字符前十个

结果显示,字符出现最多的是——逗号、教、的、学、句号、引号、幼等。

也就是说,需要排除符号后的汉字提取前5个。(如果替换逗号,估计整篇文章都删光了。)

用星火讯飞加了一个去掉“符号和数字”的要求。

结果出现最多的是“教”'的','学''幼”'动'

下面就用代码测试删除的效果

代码展示

'''
项目:信息计划小结缩略版(删除3-199个字)
工具:星火讯飞 阿夏
时间:2024年7月4日
'''from collections import Counter
import docxpath = r'C:\Users\Administrator\Desktop\信息计划小结缩略版'
file_path=path+r'\信息技术工作小结(2024.6).docx'# 删除最多的数字,准备删除几个?
# n=int(input('删除出现次数最多的数字,需要删除前几个?3、4、5\n'))
for n in range(3,200):t1='1、字符数量判断'print(f'{t1:-^20}')# 读取docx文件doc = docx.Document(file_path)# 提取所有段落中的文本all_text = []for paragraph in doc.paragraphs:all_text.append(paragraph.text)# 将所有文本合并为一个字符串full_text = ''.join(all_text)# 过滤掉标点符号和数字filtered_text = ''.join([char for char in full_text if char.isalpha()])# 使用Counter统计每个字符的数量char_count = Counter(filtered_text)# 按字符数量降序排序sorted_char_count = sorted(char_count.items(), key=lambda x: x[1], reverse=True)t2='2、删除字符'print(f'{t2:-^20}')result=sorted_char_count[0:n]print(result)doc = docx.Document(file_path)for s in range(len(result)):  # 遍历所有段落for paragraph in doc.paragraphs:# 替换“的”后面的文字为……加回车# 找到目标字符的位置index = paragraph.text.find(result[s][0])if index != -1:# 保留目标字符之前的部分,删除之后的部分paragraph.text = paragraph.text[:index + 1]+'……'# 保存修改后的文档doc.save(path+fr'\信息技术工作小结(2024.6)缩略(删除{n}个字).docx')

删除3个字 28K

删除3个字,16页变成7页

删除199个字 25K

删除199个字,16页变成7页

无论删除几个字,段落数量不变。、

在测试删除1个字2个字

删除1个字,剩下8页

删除2个字,剩下7页

于是我选了删除3个字的那一份内容上传

用删除3个字后面文字的方法,实现计划小结的缩略

'''
项目:信息计划小结缩略版(删除3个字)
工具:星火讯飞 阿夏
时间:2024年7月4日
'''from collections import Counter
import docxpath = r'C:\Users\Administrator\Desktop\信息计划小结缩略版'
file_path=path+r'\信息技术工作小结(2024.6).docx'# 删除最多的数字,准备删除几个?
n=int(input('删除出现次数最多的数字,需要删除前几个?输入3\n'))
# for n in range(1,200):
t1='1、字符数量判断'
print(f'{t1:-^20}')
# 读取docx文件doc = docx.Document(file_path)# 提取所有段落中的文本
all_text = []
for paragraph in doc.paragraphs:all_text.append(paragraph.text)# 将所有文本合并为一个字符串
full_text = ''.join(all_text)# 过滤掉标点符号和数字
filtered_text = ''.join([char for char in full_text if char.isalpha()])# 使用Counter统计每个字符的数量
char_count = Counter(filtered_text)# 按字符数量降序排序
sorted_char_count = sorted(char_count.items(), key=lambda x: x[1], reverse=True)t2='2、删除字符'
print(f'{t2:-^20}')result=sorted_char_count[0:n]
print(result)doc = docx.Document(file_path)for s in range(len(result)):  # 遍历所有段落for paragraph in doc.paragraphs:# 替换“的”后面的文字为……加回车# 找到目标字符的位置index = paragraph.text.find(result[s][0])if index != -1:# 保留目标字符之前的部分,删除之后的部分paragraph.text = paragraph.text[:index + 1]+'……'# 保存修改后的文档
doc.save(path+fr'\信息技术工作小结(2024.6)缩略(删除{n}个字).docx')

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

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

相关文章

CX1概念车空气动力学设计,打造典型“美式肌肉车”风格

Altair CX1概念车的设计 CX1是Altair公司为了满足汽车行业的设计和虚拟仿真需求而开发的一款概念车型。该车总长接近5米,外观具有典型的美式肌肉车的风格,具有视觉冲击力。 车辆的外形设计过程就是风险管理,设计师想要一个大胆而富有表现力的…

赢麻了!苹果再获OpenAI董事会观察员席位!0元白嫖ChatGPT,比肩微软

今年,苹果和OpenAI的合作有点密切。 据最新消息,苹果获得OpenAI的董事会观察员席位。 苹果应用商店负责人、前营销主管菲尔席勒(Phil Schiller)将担任这一职位,但Schiller迄今为止尚未出席任何OpenAI的会议。 观察员…

C语言刷题小记

前言 本篇博客和大家分享一些C语言的OJ题目,希望大家可以通过这些题目进一步提升自己的编程能力,如果你对本篇内容感兴趣,可以一键三连,多多关注,下面进入正文部分。 题目1 十六进制转十进制 描述 BoBo写了一个十六…

firewalld(6)自定义services、ipset

简介 在前面的文章中我们已经介绍了zone、rich rule 、--direct等功能和基本配置。在前面文章中,我们提到过firewalld内置了很多服务,可以通过firewall-cmd --get-services来查看服务,也可以通过配置文件查看这些服务/var/lib/firewalld/ser…

【Unity 角色控制器组件】

【Unity 角色控制器组件】 Character Controller: Unity 内置的一个组件,用于提供高级的物理控制,允许开发者控制角色的移动、跳跃和碰撞。 csharp csharp // 假设你已经有了一个带有Character Controller组件的游戏对象// 获取Character Co…

In Ictu Oculi: Exposing AI Created Fake Videos by Detecting Eye Blinking

文章目录 In Ictu Oculi: Exposing AI Created Fake Videos by Detecting Eye Blinking背景关键点内容预处理Long-Term Recurrent CNNsLSTM-RNN模型训练实验data启示In Ictu Oculi: Exposing AI Created Fake Videos by Detecting Eye Blinking 会议:2018 IEEE International…

容嬷嬷给紫薇过生日:鬼畜搭台,AI带货

刚入7月,短视频平台已被AI视频续写占领。 类似于紫薇在地牢里被容嬷嬷喂西瓜、喂鸡翅、喂蛋糕。张学友在《旺角卡门》的经典镜头突然给你微笑、嘟嘴、甚至祝你生日快乐。甚至,还有吴京从打斗戏变成亲吻戏。 在AI续写的短视频里,你永远也想象…

【最新综述】医学图像分割深度半监督学习(上)

摘要: 最近,深度学习在各种计算机视觉任务中展现出了巨大的前景。然而,在许多实际应用中,没有大规模的标记数据集,这限制了深度学习的应用。为了解决这个问题,半监督学习引起了计算机视觉界的广泛关注&…

二叉树的前中后序遍历(递归法、迭代法)leetcode144、94/145

leetcode144、二叉树的前序遍历 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 示例 1: 输入:root [1,null,2,3] 输出:[1,2,3] 示例 2: 输入:root [] 输出:[] 示例 3: 输…

CesiumJS【Basic】- #057 绘制纹理填充多边形(Primitive方式)

文章目录 绘制纹理填充多边形(Primitive方式)1 目标2 代码2.1 main.ts绘制纹理填充多边形(Primitive方式) 1 目标 使用Primitive方式绘制绘制纹理填充多边形 2 代码 2.1 main.ts import * as Cesium from cesium;const viewer = new Cesium.Viewer

测试Andrew NG的语言翻译Agent

我正在测试 Andrew Ng 的语言翻译 A​​I 代理系统及其在逆变换下的稳定性。 给定源语言的文本,我们应用翻译函数 f,然后应用 f 的逆。它应该是不变的: 但是,数学与语言翻译有什么关系? 在完美的系统中,从…

springboot异常产生原因

DataIntegrityViolationException Cause: java.sql.SQLException: Field ‘id’ doesn’t have a default value org.springframework.dao.DataIntegrityViolationException: ### Error updating database. Cause: java.sql.SQLException: Field id doesnt have a default …

[译]全栈Redux实战

本文乱译自一篇英文博文(Full-Stack Redux Tutorial),本人英语能力不足,技术能力有限,如有错误,多多包涵。 #关于ReduxReactImmutable的测试先行开发综合指南 Redux是最近发生在js界令人兴奋的事儿。它把…

提升Unity WebGL游戏启动速度

一、查看启动耗时 通过修改unity-namespace.js中hideTimeLogModal为false,显示timelog开发者可以看到小游戏目前的启动首屏时长: 将其设置为false后,启动小程序后就会显示启动耗时 要知道各个阶段的含义,我们必要理解启动流程。 …

springboot 整合 mybatis-plus

一.前言 1. mybatis-plus是什么 mybatis-plus是一个对mybati框架的拓展框架,它在mybatis框架基础上做了许多的增强,帮助我们快速的进行代码开发。目前企业开发中,使用mybati的项目基本会选择使用mybatis-plus来提升开发效率。 2.官网地址&…

LT8668SXC 、LT8668SX-D 、LT8668SX三种芯片的相似与不同

一、LT8668SXC(支持eDP输出) 定义:LT8668SXC配置在HDMI2.1标准下工作,最大数据速率为8Gbps。 LT8668SXC还可以配置为在Type-C输入或DP1.4a下工作,数据速率高达8.1Gbps。 eDP1.4b输出由8个数据通道组成,支持RBR (1.62Gbps)、HBR (2…

比较多种msvcr110.dll丢失的解决方法,哪一种更加方便?

当遇到“msvcr110.dll丢失”这种问题时,这通常意味着你的系统中缺少了Microsoft Visual C 2012 Redistributable的组件。下面我将详细介绍五种解决方法,并对比它们的优点。 一.多种msvcr110.dll丢失的解决方法 方法 1: 重新安装Microsoft Visual C 2012…

Redis持久化的三种方式(RDB、AOF和混合)

Redis持久化的三种方式(RDB、AOF和混合) 目录 Redis持久化的三种方式(RDB、AOF和混合)介绍RDB示例1.配置文件2.触发 RDB 快照保存3.验证 AOF示例1.配置文件2.校验 混合型持久化存储配置文件 介绍 Redis数据主要存储与内存中,因此如果服务器意外重启、宕机、崩溃&am…

乘积最大子数组

代码实现&#xff1a; 方法一&#xff1a;暴力法 方法二&#xff1a;动态规划 int maxProduct(int *nums, int numsSize) {long imax nums[0], imin nums[0], res nums[0];for (int i 1; i < numsSize; i) {if (nums[i] < 0) {int temp imax;imax imin;imin temp;…

学会python——用python编写一个电子时钟(python实例十七)

目录 1.认识Python 2.环境与工具 2.1 python环境 2.2 Visual Studio Code编译 3.电子时钟程序 3.1 代码构思 3.2代码实例 3.3运行结果 4.总结 1.认识Python Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 的设计具有很强的可读性…