首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

python提取相同列做差,该怎么解决

2012-05-07 
python提取相同列做差有这么一段数据1 a b3 c b4 a b6 a c现在想把第二列和第三列相同的在此例中为第一和

python提取相同列做差
有这么一段数据
1 a b
3 c b
4 a b
6 a c

现在想把第二列和第三列相同的 在此例中为第一和第三行
提出来 然后 第一列的数值做差

需要得到的结果为
a b :3

改如何实现啊

[解决办法]

Python code
s = '''1 a b3 c b4 a b6 a c'''# splitdictElement = {}for line in s.split('\n'):    elements = line.strip().split(' ')    newkey = '->'.join(elements[1:])    if dictElement.has_key(newkey):        dictElement[newkey].append(int(elements[0]))    else:        dictElement[newkey] = [int(elements[0])]# printfor k,v in dictElement.items():    print k,vprint '---------------------'# calculatefor k,v in dictElement.items():    if len(v)>1:        for i in range(1,len(v)):            print k,':',v[i]-v[i-1]    else:        print k,':',v[0] 

热点排行