Python如何计算文本相似度?Python怎么对比文件是否相同

在有时候清理电脑上冗余和重复文件时,需要去比对两个文件之间的内容是否有相同的再决定删除其中一个 。而这样逐个打开文件进行检查比对是很繁琐和枯燥的,所以下面小编来给大家分享一个能够对比文件内容来计算文本相似度的自动化脚本,感兴趣的话就一起看看吧 。

Python如何计算文本相似度?Python怎么对比文件是否相同

文章插图
1.在一个文件夹之中创建一个python文件并命名为docComp,然后使用python编辑器将其打开 。打开之后编写代码就需要导入difflib这个模块,该模块是python的内置模块,不需要下载安装就可以直接导入,示例如下:
from difflib import SequenceMatcher2.因为脚本是自动化可以重复去进行调用的,所以还需要去定义一个函数作为主要的逻辑处理代码 。函数需要有两个参数,这两个参数的值就是文件路径,示例如下:
def file_similarity_checker(f1, f2):3.在函数里面使用with上下文管理关键词进行修饰,并用open()方法将两个传进来的问价打开之后读取里面的内容放在变量之中,示例如下:
with open(f1, errors="ignore") as file1, open(f2, errors="ignore") as file2:  f1_data = file1.read()  f2_data = file2.read()4.之后就可以使用SequenceMatcher()方法来对比两个文件的内容计算出它们的相似度了,该方法的使用原理是逐行的查找第二个文本中是否有第一个文本内该元素的最常匹配序列,有的话就表示它们是重复的 。最后会得出一个相似度,通过print()将值打印出来,示例如下:
checking = SequenceMatcher(None, f1_data, f2_data).ratio()print(f"文本相似度为{checking*100} % similar")【Python如何计算文本相似度?Python怎么对比文件是否相同】以上就是关于“Python如何计算文本相似度?Python怎么对比文件是否相同”的全部内容了,希望对你有所帮助 。

    推荐阅读