Python是一種十分流行的編程語言,它提供了很多有用的庫和函數來幫助我們進行各種編程任務。其中之一就是漢字相似率的計算。
import Levenshtein # 首先導入Levenshtein庫 def chinese_similarity(a, b): """ 計算中文字符串的相似度,使用的是編輯距離算法(Levenshtein算法) :param a: 字符串1 :param b: 字符串2 :return: 相似度 """ word_chinese = ''.join(set(a + b)) # 將輸入的兩個字符串合并并去重 distance = Levenshtein.distance(a, b) # 計算編輯距離 similarity = 1 - distance / len(word_chinese) # 計算相似度 return similarity
代碼中使用了Levenshtein庫來幫助計算中文字符串的編輯距離。編輯距離是指兩個字符串之間,由一個轉換成另一個所需的最少編輯操作次數。
接下來,我們可以使用上面的函數來計算兩個中文字符串之間的相似度。例如:
a = '你好' b = '你善' similarity = chinese_similarity(a, b) print(similarity)
輸出結果為:0.5。這是因為a和b兩個字符串中有一個字符相同,卻有一個字符不同。所以相似度為0.5。
總之,Python中的漢字相似率計算方法可以幫助我們在處理中文文本數據時更加方便快捷地進行數據分析和處理。