首页 > 编程语言 >difflib: Python 比较数据集

difflib: Python 比较数据集

时间:2023-09-12 20:12:16浏览次数:50  
标签:函数 get Python SequenceMatcher difflib matches close 数据

difflib 是一个专注于比较数据集(尤其是字符串)的 Python 模块。为了具体了解您可以使用此模块完成的几件事,让我们检查一下它的一些最常见的函数。

SequenceMatcher

SequenceMatcher 是一个比较两个字符串并根据它们的相似性返回数据的函数。通过使用 ratio(),我们将能够根据比率/百分比量化这种相似性

语法:

SequenceMatcher(None, string1, string2)

下面这个简单的例子展示了该函数的作用:

from difflib import SequenceMatcher

phrase1 = "Tandrew loves Trees."
phrase2 = "Tandrew loves to mount Trees."
similarity = SequenceMatcher(None, phrase1, phrase2)
print(similarity.ratio())
# Output: 0.8163265306122449

get_close_matches

接下来是 get_close_matches,该函数返回与作为参数传入的字符串最接近的匹配项。
语法:

get_close_matches(word, possibilities, result_limit, min_similarity)

下面解释一下这些可能有些混乱的参数:

  • word 是函数将要查看的目标单词。
  • possibilities 是一个数组,其中包含函数将要查找的匹配项并找到最接近的匹配项。
  • result_limit 是返回结果数量的限制(可选)。
  • min_similarity 是两个单词需要具有的最小相似度才能被函数视为返回值(可选)。

下面是它的一个使用示例:

from difflib import get_close_matches

word = 'Tandrew'
possibilities = ['Andrew', 'Teresa', 'Kairu', 'Janderson', 'Drew']

print(get_close_matches(word, possibilities))
# Output: ['Andrew']

除此之外还有几个是您可以查看的属于 Difflib 的其他一些方法和类:unified_diffDiffer和 diff_bytes

标签:函数,get,Python,SequenceMatcher,difflib,matches,close,数据
From: https://www.cnblogs.com/startisan/p/17697688.html

相关文章

  • python实现md5签名
    在Python中,hashlib.md5是一个用于计算MD5哈希值的模块。MD5是一种常用的哈希算法,它将输入数据转换为固定长度的哈希值。defget_api_sign():"""签名的计算方式:sign=md5(accountId+"zjkj@2023"+time)*2重复两次"""acco......
  • python安装后,添加完环境变量,dos窗口输入python无效
    问题背景python版本:3.8.5安装时是否勾选添加环境:是问题:dos窗口输入python提示:无任何报错提示,弹出windows应用商店解决方案问题1:弹出windows应用商店是因为默认的商店的path环境变量优先级高于我们配置的python目录,将对应的配置优先级调换即可,比如C:\Users\panie\AppDa......
  • QTableView部分基本使用、与数据库搭建
    创建一个QSqlTableModel来管理数据库表格的数据,可以在后续步骤中使用这个模型来与表格内容进行交互。QSqlTableModel*model=newQSqlTableModel;model->setTable("your_table_name");//设置表格名称model->select();//从数据库中选择数据设置QTableView模型:将QSqlTableMo......
  • python版elasticsearch入门笔记
    Elasticsearch是一个分布式、高扩展、高实时的搜索与数据分析引擎。Elasticsearch的实现原理主要分为以下几个步骤,首先用户将数据提交到Elasticsearch数据库中,再通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据,当用户搜索数据时候,再根据权重将结果排名,打分,再......
  • 9.12将仓库管理系统改为数据库实现
    今天使用IDEA完成了仓库管理系统的连接数据库MYSQL,基本实现了增,删,改,查。importjava.sql.*;importjava.util.Scanner;//11111111华为华为公司202301012023010211100001121105//22222222小米小米公司202301022023020222200001122114//33333333魅族魅族公司202......
  • openGauss学习笔记-67 openGauss 数据库管理-创建和管理普通表-创建表
    openGauss学习笔记-67openGauss数据库管理-创建和管理普通表-创建表67.1背景信息表是建立在数据库中的,在不同的数据库中可以存放相同的表。甚至可以通过使用模式在同一个数据库中创建相同名称的表。创建表前请先规划存储模型。67.2创建表执行如下命令创建表。openGauss=#......
  • python的sorted函数
    sorted 函数用于对可迭代对象进行排序。你可以使用 sorted 函数来按照默认的升序顺序对元素进行排序,也可以使用 key 参数来指定一个自定义的排序关键字函数。以下是 sorted 函数的基本用法以及关于 key 参数的详细说明:基本用法:sorted(iterable,key=None,reverse=Fals......
  • python中常见函数
    filter, reduce,和 map 是Python中用于对集合数据进行处理和转换的内置函数。它们分别用于筛选、归约和映射集合中的元素。filter 函数:filter(function,iterable) 用于筛选集合中的元素。它接受一个函数 function 和一个可迭代的对象 iterable,并返回一个包含 iterabl......
  • 达梦数据库的执行计划解读
    概念描述达梦数据库跟oracle、mysql一样,也有自己的优化器,优化器会根据需要执行的sql,计算出执行该sql使用的各种方案的代价(即时间),然后会选择一个代价最低的方案,去执行SQL。也就是执行计划。常用的查看执行计划有两种方式:1.EXPLAIN+SQL语句查看执行计划,在需要执行的sql前,加上explain......
  • 使用golang上报数据
    packagemainimport("fmt" "time" "context" "strings" "github.com/gin-gonic/gin""github.com/SkyAPM/go2sky" "github.com/SkyAPM/go2sky/reporter")funcmain(){ //创建一个......