| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2019 人关注过本帖
标题:求助!!关于hamming distance(海明距离)的python!!!
只看楼主 加入收藏
beiyuame
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2013-1-23
收藏
 问题点数:0 回复次数:1 
求助!!关于hamming distance(海明距离)的python!!!
老师给我们一个题目,写一个方程,可以求出两个向量的hamming distance。 原题如下:
A function which computes the Hamming distance between two vectors.  
这个题目的前提条件是,2个向量是有同样的dimension的

我现在学的编程的语言不是很多,我看到维基百科上有个python的方程如下:
def hamming_distance(s1, s2):
    assert len(s1) == len(s2)
    return sum(ch1 != ch2 for ch1, ch2 in zip(s1, s2))

写得很好,但是我还没有学到 assert 和zip, 我现在自己写了一个是这样的:我在写方程之前也举了x和y的例子来验证我写得对不对:

>>> x=(1,3,5)
>>> y=(1,2,4)
>>> for i in range(len(x)):
    if x[i]!=y[i]:
        print(x[i])

        
3
5

但是我想得到的是他们不同的个数,应该是2,而不是把不同的数写出来。 但是我现在不知道如果最后写一个code,可以得出那个数量,而不是把不同的数写出来。



希望有人能帮我想出那个能得出数量的code, 或者能否写个简单的求海明距离的python? 简单不是指行数很少,而是指用到的是一些常用的,简单的,初学者会用到的code

谢谢你们啦!!!!
搜索更多相关主题的帖子: function distance between 
2013-01-23 20:30
木头lbj
Rank: 7Rank: 7Rank: 7
来 自:黄山
等 级:黑侠
威 望:1
帖 子:269
专家分:527
注 册:2010-11-6
收藏
得分:0 
程序代码:
>>> x = (1,3,5)
>>> y = (1,2,4)
>>> num = 0
>>> for i in range(len(x)):
...     if x[i] != y[i]:
...         num = num + 1
... 
>>> print num
2

按照你的意思应该是这样。加一个变量就行。你这问题一分都没。。。。真是。。。。
这里python人气真是差啊。。。

。。。!!!)))000
2013-02-17 22:01
快速回复:求助!!关于hamming distance(海明距离)的python!!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017355 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved