在python中,求兩個字符串的漢明距離可以使用內置函數,也可以手動實現。下面給出兩種方法。
使用內置函數:
def hamming_distance(str1, str2): return bin(int(str1, 16) ^ int(str2, 16)).count('1') distance = hamming_distance('03', '0F') print(distance) # 輸出2
使用位運算手動實現:
def hamming_distance(str1, str2): distance = 0 if len(str1) != len(str2): return None for i in range(len(str1)): if bin(int(str1[i], 16) ^ int(str2[i], 16)).count('1') != 0: distance += 1 return distance distance = hamming_distance('03', '0F') print(distance) # 輸出2
以上兩種方法都實現了求兩個字符串的漢明距離,第一種方法使用了內置函數,代碼簡潔明了;第二種方法手動實現,可以更好地理解漢明距離的計算原理。
上一篇vue函數定義在
下一篇c 字符串解析成json