Преобразовать строку в тип int:
get_num_bits_different(int(hash1, 16), int(hash2, 16))
Тестовый код:
def get_num_bits_different(hash1, hash2):
return bin(hash1 ^ hash2).count('1')
hash1 = '3d77'
hash2 = '9301'
print(get_num_bits_different(int(hash1, 16), int(hash2, 16)))
Результаты:
10