python 合并行
cu上的一个问题 Http://bbs.chinaunix.net/viewthread.PHP?tid=1827378&page=1&extra=#pid13223240
cat 1
4056 78
4056 198
7717 98
7717 218
7718 98
7718 218
7719 98
7719 99
7719 218
7719 219
7720 98
7720 99
7720 218
7720 219
7720 220
7720 221
#!/usr/bin/env python
import re
file=open("./1","r")
dict={}
for line in file:
line=line.strip()
key=line.split()[0]
value=line.split()[1]
dict.setdefault(key,[]).append(value)
for k in dict.keys():
values=dict[k]
#print values
a=[]
n=len(values)
for i in range(0,n-1):
if(int(values[i+1])==int(values[i])+1):
a.append(values[i])
a.append("-")
if i==n-2:
a.append(values[n-1])
else:
a.append(values[i])
a.append(",")
if i==n-2:
a.append(values[n-1])
value=''.join(a)
value=re.sub("-[0-9 -]*-","-",value)
print k,value
7719 98-99,218-219
4056 78,198
7720 98-99,218-221
7717 98,218
7718 98,218
相关文章