| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- # 第一种 大于80好一点 70?
- from fuzzywuzzy import fuzz
- def levenshtein_similarity(str1, str2):
- if str1 != None and str2 != None:
- return fuzz.ratio(str1.upper(), str2.upper())
- return None
- # # 示例
- # str1 = "o python"
- # str2 = "hello python"
- # similarity = levenshtein_similarity(str1, str2)
- # # print(f"相似度: {similarity}")
- #
- #
- # from sklearn.feature_extraction.text import TfidfVectorizer
- # from sklearn.metrics.pairwise import cosine_similarity
- #
- # def cosine_similarity_strings(str1, str2):
- # vectorizer = TfidfVectorizer()
- # tfidf = vectorizer.fit_transform([str1, str2])
- # return cosine_similarity(tfidf)[0, 1]
- #
- # # 示例
- # str1 = "hello pytho"
- # str2 = "hello python"
- # similarity = cosine_similarity_strings(str1, str2)
- # print(f"相似度: {similarity}")
- #
- #
- #
- # import difflib
- #
- # def string_similarity(str1, str2):
- # return difflib.SequenceMatcher(None, str1, str2).ratio()
- #
- # # 示例
- # str1 = "hello world"
- # str2 = "hello python"
- # similarity = string_similarity(str1, str2)
- # print(f"相似度: {similarity}")
|