Python FlashText 模块2024 年 8 月 29 日 | 阅读 3 分钟 在本教程中,我们将学习 FlashText 模块以及如何使用 FlashText 在文本序列中替换单词。这提供了替换文本文档中大量单词的高效方法。 FlashText 算法的工作原理FlashText 算法建立在专有算法 FlashText 算法之上。本质上,它基于 Aho-Corasick 算法的 Python 实现。 该算法的优点是减少了在文本中搜索大量关键字所花费的时间。FlashText 算法将所有关键字与相应的替换词存储在一个字典中。因此,它省略了对字典中每个关键字的扫描文本,它只扫描文本一次。如果单词在扫描的字典键中匹配,则替换为键的值。 如何安装 FlashText我们可以使用如下的 pip 命令进行安装。 使用 FlashText让我们来介绍一下 FlashText 模块的类。 KeywordProcessor 类KeywordProcessor 类是负责关键字处理的主要类。让我们直接从 FlashText 导入它并进行初始化。 最后一行创建了 KeywordProcessor 对象,该对象将在不区分大小写模式下工作。 但是,我们可以在区分大小写模式下创建 KeywordProcessor 实例。 定义关键字字典在此模块中,我们使用关键字来定义需要替换的单词。KeywordProcessor 对象包含一个包含所有已定义关键字的字典。 有两种向字典添加关键字的方法:批量添加或逐个添加。 首先,让我们看看如何逐个添加关键字 -
如果我们有很多关键字,逐个添加可能会花费很长时间。或者,我们可以创建一个小的关键字列表来批量添加关键字。 示例 - 字典中的每个键都是一个字符串关键字。每个值都必须是一个列表。或者,您可以提供关键字列表。 此方法允许仅添加没有替换词的关键字。或者,我们可以像下面这样在文本文件中指定键值对。 我们可以使用 keywords_from_file() 函数导入文件 - 这是一种流行的方法,因为它具有最大的灵活性和出色的可读性。考虑到它最终都将成为一个字典,这也是与算法最自然的匹配。 让我们看一个实际的例子 - 假设我们有一个文本文件,并且我们想尽量减少同义词的使用以标准化所使用的词汇。在此示例中,我们将所有出现的单词 "grim"、"nasty"、"unpleasent" 替换为单词 bad(替换词),并将所有出现的单词例如 excellent、quality、fine 替换为单词 good。 我们需要为 keyword_dictionary 创建一个关键字和 replacement_words 的字典。 示例 - 然后,将此 keyword_dictionary 添加到 keyword_processor 对象。 用替换词替换关键字一旦我们将关键字及其相应的替换词分配到 KeywordProcessor 实例中,我们就可以使用 replace_keywords() 函数,该函数会扫描提供的文本并执行替换。 提供的文本会被解析,其中所有关键字都会被替换为其匹配的值,并返回新字符串。而不是处理字符串字面量,我们将处理文档。我们将以读取模式打开文档并读取其中的行,然后将字符串传递给 replace_keyword() 函数。 示例 - 现在,我们在 new.txt 中添加一些文本。 下一主题Python PDF 提取库 |
SymPy 是一个开源的符号计算 Python 包。它可以用作独立程序、其他应用程序的库,或作为名为 SymPy Live 或 SymPy Gamma 的实时在线应用程序。因为 SymPy 完全用 Python 编写,并且依赖项很少,所以...
14 分钟阅读
Set:Python 内置的 set 类型具有以下特点:集合是无序的。集合由唯一元素组成。不允许使用重复元素。构成集合的元素必须是不可变类型;集合本身可以更改。Python 中的 Set 是...
阅读 3 分钟
Seaborn是Python中用于图形统计绘图的可视化出色库之一。Seaborn提供了许多调色板和默认漂亮的样式,使Python中许多统计绘图的创建更具吸引力。Python Seaborn库的目标是...
阅读 4 分钟
?在本教程中,我们将看到如何编写代码来打印 Python 错误层次结构。但在开始之前,我们应该首先了解异常到底是什么?异常是指即使我们的代码在语法上是正确的也可能发生的错误。这些不是...
阅读 2 分钟
Python 是最流行的***别编程语言之一。Python 为人工智能(TensorFlow、PyTorch)、机器学习(Pandas、NumPy、Matplotlib)和游戏开发(Pyglet、PyGame)等不同领域提供了庞大的库。我们也可以将 Python 视为新一代编程语言,因为它展示了它的...
阅读 48 分钟
在本教程中,我们将理解 Python 中属性和特性之间的区别。Python 中的一切都是对象,每个类都有属性、方法或函数。当我们使用面向对象编程语言时,我们会遇到术语——属性和特性。在术语中...
阅读 3 分钟
引言 Python 是一种被全球开发人员使用的编程语言。Python 的基本特性之一是面向对象编程(OOP)。它允许程序员创建对象、类和实例。在本文中,我们将详细讨论 Python 实例并进行演示...
阅读 6 分钟
情感分析是一个“计算确定”某篇文章是积极、中性还是消极的过程。它也称为意见挖掘。此过程确定段落中的句子是消极、积极还是中性。商业:营销公司使用它来制定策略、了解客户的...
阅读 3 分钟
本教程重点介绍如何使用 Python 的 Tkinter 创建一个计时器。由于小部件类,我们可以访问许多基本功能。它们提供了用于管理不同用户驱动事件的方法,以及用于定义 GUI 外观的方法,例如放置元素……
阅读 3 分钟
在本教程中,我们将了解机器人系统(框架)。我们将涵盖标准库和基本功能。接下来,我们还将涵盖测试、关键字、组件,最后是测试的编排。Robot Framework 是一个通用的开源自动化框架,用于 ATTD(验收测试驱动开发)、验收测试……
阅读9分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India