Python:(从列表中)找到与另一个字符串最接近的字符串

2023-12-01

假设我有一个string "Hello"和一个清单

words = ['hello', 'Hallo', 'hi', 'house', 'key', 'screen', 'hallo','question', 'Hallo', 'format']

我怎样才能找到n words那些最接近"Hello"并出现在列表中words ?

在这种情况下,我们会有['hello', 'hallo', 'Hallo', 'hi', 'format'...]

因此,策略是将列表单词从最近的单词到最远的单词​​排序。

我想到了这样的事情

word = 'Hello'
for i, item in enumerate(words):
    if lower(item) > lower(word):
      ...

但在大型列表中它非常慢。

UPDATE difflib可以工作,但也很慢。 (words list里面有 630000 多个单词(已排序,每行一个))。因此,每次搜索最接近的单词时,检查列表需要 5 到 7 秒!


Use difflib.get_close_matches.

>>> words = ['hello', 'Hallo', 'hi', 'house', 'key', 'screen', 'hallo', 'question', 'format']
>>> difflib.get_close_matches('Hello', words)
['hello', 'Hallo', 'hallo']

请查看文档,因为该函数默认返回 3 个或更少的最接近的匹配项。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python:(从列表中)找到与另一个字符串最接近的字符串 的相关文章

  • 在python中将文本文件解析为列表

    我对 Python 完全陌生 我正在尝试读取包含单词和数字组合的 txt 文件 我可以很好地读取 txt 文件 但我正在努力将字符串转换为我可以使用的格式 import matplotlib pyplot as plt import num
  • 如何使用Python将WebP图像转换为Gif?

    我已经尝试过这个 from PIL import Image im Image open this webp im save that gif gif save all True 这给了我这个错误 类型错误 不支持的操作数类型 tuple
  • 优化 Keras 以使用所有可用的 CPU 资源

    好吧 我真的不知道我在说什么 所以请耐心听我说 我正在使用 Theano 后端运行 Keras 以在 MNIST 图像上运行基本的神经网络 目前只是一个教程 过去 我一直使用我的旧 HP 笔记本电脑 因为我有 Windows 和 Ubunt
  • SQL Server 转换选择一列并将其转换为字符串

    是否可以编写一条从表中选择列并将结果转换为字符串的语句 理想情况下 我希望有逗号分隔的值 例如 假设 SELECT 语句看起来像这样 SELECT column FROM table WHERE column lt 10 结果是一列包含值的
  • Pandas重置索引未生效[重复]

    这个问题在这里已经有答案了 我不确定我在哪里误入歧途 但我似乎无法重置数据帧上的索引 当我跑步时test head 我得到以下输出 正如您所看到的 数据帧是一个切片 因此索引超出范围 我想做的是重置该数据帧的索引 所以我跑test rese
  • 错误:permission_manager_qt.cpp(82) 不支持的权限类型:13

    我正在开发具有内置浏览器功能的 python 代码 PyQt 5 13 import sys from PyQt5 QtCore import from PyQt5 QtGui import from PyQt5 QtWidgets imp
  • 将字符串存储在 constexpr 结构中

    是否可以将字符串存储在constexpr struct 到目前为止我只能想出 struct A constexpr A std string view n m name n constexpr auto name return m name
  • sudo pip install python-Levenshtein 失败,错误代码 1

    我正在尝试在 Linux 上安装 python Levenshtein 库 但每当我尝试通过以下方式安装它时 sudo pip install python Levenshtein 我收到此错误 命令 usr bin python c 导入
  • Python Kivy - 在本机网络浏览器中打开 url 的应用程序

    我尝试制作一个简单的应用程序 在单击 Screen One 上的按钮后 在 Kivy 中打开一个网页 我使用了这个主题 Python 在应用程序中直接显示网络浏览器 iframe https stackoverflow com questi
  • 如何通过双击在浏览器中打开 ipynb 文件

    以前 我安装了 Canopy 当时 我只需双击 ipynb 文件并在浏览器中打开它们即可 但是 后来我需要Anaconda 一旦我安装了它 这个功能就没有了 现在我只希望能够简单地双击 ipynb 文件 然后该文件就会在 Firefox 中
  • 获取列表中倒数第二个元素[重复]

    这个问题在这里已经有答案了 我可以通过以下方式获取列表的倒数第二个元素 gt gt gt lst a b c d e f gt gt gt print lst len lst 2 e 有没有比使用更好的方法print lst len lst
  • Python:计算数据帧列中所有行中特定字符的实例数

    我有一个包含列 toaddress ccaddress body 的数据框 df 我想迭代数据帧的索引 以获取 toaddress 和 ccaddress 字段中电子邮件地址的最小 最大和平均数量 这是通过计算这两列中每个字段中的 和 的实
  • SWI Prolog 转义引号

    我需要在序言中将 放在字符串周围 我从另一个程序获取输入 看起来我无法转义该程序中的 因此我必须在序言中添加 否则序言语句将不起作用 感谢您的帮助 为了讨论strings https stackoverflow com a 39922411
  • 如何列出 python PDB 中的当前行?

    在 perl 调试器中 如果重复列出离开当前行的代码段 可以通过输入命令返回到当前行 点 我无法使用 python PDB 模块找到任何类似的东西 如果我list如果我自己离开当前行并想再次查看它 似乎我必须记住当前正在执行的行号 对我来说
  • conda-env list / conda info --envs 如何查找环境?

    我一直在尝试 anaconda miniconda 因为我的用户使用随 miniconda 安装的结构生物学程序 并且作者都没有 A 考虑到可能存在其他 miniconda 应用程序 B 他们的程序将在多用户环境中使用 因此 使用 Arch
  • Matplotlib Scatter - ValueError:RGBA 序列的长度应为 3 或 4

    我正在尝试为我的功能绘制图表 但不断收到此错误 ValueError RGBA sequence should have length 3 or 4 每当我只有 6 种形状时 代码就可以完美运行 但现在我将其增加到 10 种 它就不起作用了
  • 将一个列表的元素除以另一个列表的元素

    我有两个清单 比如说 a 10 20 30 40 50 60 b 30 70 110 正如你所看到的 列表 b 由一个列表的元素总和组成 其中 window 2 b 0 a 0 a 1 10 20 30 etc 如何获得另一个列表 该列表由
  • 查找给定节点的最高权重边

    我在 NetworkX 中有一个有向图 边缘的权重从 0 到 1 表示它们发生的概率 网络连通性非常高 所以我想修剪每个节点的边缘 只保留最高概率的节点 我不确定如何迭代每个节点并仅保留最高权重in edges在图中 有没有一个networ
  • 如何将列表字典写入字符串而不是 CSV 文件?

    This 堆栈溢出问题 https stackoverflow com questions 37997085 how to write a dictionary of lists to a csv file将列表字典写入 CSV 文件的答案
  • 如何连接字符串和常量字符?

    我需要将 hello world 放入c中 我怎样才能做到这一点 string a hello const char b world const char C string a hello const char b world a b co

随机推荐

  • Python 使用 JOSE 模块解码 jwt 令牌

    请帮我解码这个 jwt使用 python jose 模块 我不知道什么key我应该用 因为任何在线 jwt 解码器都可以在没有任何密钥的情况下解码它 token eyJhbGciOiJSUzI1NiIsImtpZCI6ImVlYTFiMWY
  • Javascript 检查数组是否存在特定数字

    我在这里搜索了很多问题 但还没有找到一个我认为适合我的问题 所以如果您知道一个问题 请链接到它 我有一个数组 我想在其中搜索特定的数字 如果该数字在数组中 那么我想采取一个操作 如果没有 则采取另一个操作 我有这样的东西 var Array
  • ng-content 中带有选择器的条件重复 templateref

    我有一个根据客户端设备大小切换组件模板的组件 组件代码为 import Component from angular core import BreakpointObserver Breakpoints from angular cdk l
  • SparkJava 变量范围

    我正在开发一个 SparkJava 不是 Apache Spark 应用程序 我想在前置过滤器和后置路由之间共享一个对象 过滤器和路由在不同的类中定义 我不愿意继续使用会话 因为它是一个移动应用程序 json api 从理论上讲 它应该是无
  • 如何使用单个命令删除clearcase分支?

    我不小心创建了一个配置规范错误的分支 并且在其中进行了本不该完成的合并 有没有一种方法可以用一个且唯一的命令来删除这个分支 就像它从未存在过一样 分支中没有检出文件 我可以检查所有文件并手动执行 因为只有 3 个文件被合并 但如果有 300
  • 在 Win32 发布模式下查看 VC++ 2010 中准确反汇编的最佳方法是什么?

    我正在编写汇编级优化代码 我需要确保 C 编译器在发布模式下正确使用它 我曾经能够让发布模式程序在 VS 2002 中的断点上中断 并在我逐步执行它时显示原始反汇编 但我不记得如何让它工作 VS 2010 是否有任何选项可能允许这种情况发生
  • 在php中打开com端口

    我有一个 USB 3G 调制解调器华为 E1550 和 Windows XP 我想用这个调制解调器 trhow php 发送短信 我使用此函数打开调制解调器 com 端口 fp fopen COM3 wb if fp echo Not op
  • 通过在一个热编码数据上训练的模型来预测新值

    这可能看起来是一个微不足道的问题 但我陷入了预测模型结果的困境 我的问题是这样的 我有一个形状为 1000 x 19 的数据集 目标特征除外 但经过一次热编码后 它变成了 1000 x 141 由于我在形状为 1000 x 141 的数据上
  • JavaScript - Chart.js 工具提示显示错误的 x 轴值

    我有一个包含两个不同数据集的图表 但有时它们具有相同的 x y 坐标 但是当我将鼠标悬停在共享点 有时会显示错误的日期 y 值是正确的 但 x 值显示不正确 尝试将鼠标悬停在共享点 在 codepen 上 在下图中你可以看到我正在悬停 y
  • 动态添加内容到RelativeLayout

    由于我仍在学习 Android 亚马逊表示我需要 2 个月的时间才能收到 Hello Android 一书 所以我仍在尝试做一些简单的事情 我可以使用RelativeLayout 单击按钮来显示图标图像视图 创建它的代码如下 private
  • 从txt中读取科学格式的数字

    我想从 txt 文件中读取并存储科学格式的数字 该文件已格式化并且数字由制表符分隔 这是我到目前为止所拥有的 IMPLICIT NONE REAL ALLOCATABLE DIMENSION 2 data INTEGER row colum
  • Spark 工作负载需要 HDFS 吗?

    HDFS 不是必需的 但在某些地方会出现建议 为了帮助评估运行 HDFS 所花费的精力 将 HDFS 用于 Spark 工作负载有哪些好处 最短的答案是 不 你不需要它 即使没有 HDFS 您也可以分析数据 但当然您需要在所有节点上复制数据
  • SQL捕获BULK INSERT错误4863

    我在 try catch 块内有一个批量插入 BEGIN TRY BULK INSERT dbo EQUIP STATUS CODE FROM filepath filename csv WITH MAXERRORS 1 FIELDTERM
  • JavaScript/jQuery 正则表达式用有效字符替换输入字段

    我正在构建一个 CMS 用户可以通过文本输入控件自定义页面的 SEO URL 例如 假设用户正在创建一个画廊 并且他们希望访问他们的页面http www example com my 1st gallery 请注意 my 1st galle
  • 打开第三方应用程序

    我正在开发一个使用包名称来启动第三方应用程序的应用程序 我做了一些研究 发现所有应用程序都可以从启动器意图启动 有谁知道如何通过单击按钮来执行此操作 您无法真正 启动应用程序 如果您知道包名 您可以尝试从第 3 方应用程序获取启动意图 In
  • 是否可以在另外 2 个 Flex div 之间滚动 div 内容?

    我在页面顶部粘贴了一个标题栏 A 在页面底部粘贴了一个页脚栏 C 每一个都有固定的高度30px并在这里用黄色表示 它们通过以下代码粘在那里 display flex align content space between 在这 2 个 di
  • 指定默认端口时“用户登录失败”

    尝试调试客户在尝试指定 SQL Server 端口时的连接问题 我检查了本地重现问题 我的服务器在默认的 1433 端口下运行 使用以下命令指定该端口 SqlConnectionStringBuilder builder new SqlCo
  • 如何从Java文本文件中读取单个单词(或行)?

    就像标题所说 我正在尝试编写一个程序 可以从文本文件中读取单个单词并将它们存储到String变量 我知道如何使用FileReader or FileInputStream阅读单个char但对于我正在尝试的事情来说 这是行不通的 输入单词后
  • 通过 Android 使用自定义请求方法

    在开发 API 时 需要提供对 API 的使用者 开发人员 有意义的自定义请求方法 请求方法的 标准 集 按照RFC 2616 are GET PUT POST DELETE TRACE CONNECT 我想添加另一个 称为SEARCH 在
  • Python:(从列表中)找到与另一个字符串最接近的字符串

    假设我有一个string Hello 和一个清单 words hello Hallo hi house key screen hallo question Hallo format 我怎样才能找到n words那些最接近 Hello 并出现