读书人

python中数组比较有关问题

发布时间: 2012-02-03 22:02:47 作者: rapoo

python中数组比较问题
例如:a=[1,-1,1,1,1,-1,1]
b=[-1,1,1,1,-1,-1,1]
不用双重循环,有没有什么简单的方法可以计算出这两个数组里元素不同的个数或者元素都为-1的个数?本例中sum(a[i]!=b[i])= 3 sum(a[i]==b[i]==-1)=1

[解决办法]
懒得写循环,你可以试试map函数:

>>> a = [ 1,-1, 1, 1, 1, -1, 1]
>>> b = [-1, 1, 1, 1,-1, -1, 1]
>>> sum(map(lambda x, y: 1 if x!=y else 0, a, b))
3
>>> sum(map(lambda x, y: 1 if x==y==-1 else 0, a, b))
1

读书人网 >perl python

热点推荐