python从list中取出连续的数_python list 中找连续的数字(由网友处学习)
#?-*-?coding:?utf-8?-*-
#?python:2.x
__author__?=?‘Administrator‘
#學(xué)習(xí)這個(gè)要求的:http://wsky.org/archives/162.html
import?sys
from?itertools?import?*
from?operator?import?*
def?parse(f):
d={}
for?line?in?open(f,‘r‘):
_line=line.split()
d.setdefault(_line[0],[]).append(_line[1])
for?key?in?d.keys():
data=sorted(map(lambda??x:int(x[1:]),d[key]))
sys.stdout.write(key+‘?‘)
for?k,g?in?groupby(enumerate(data?),lambda?(i,x):i-x):
ret=map(itemgetter(1),g)
if?len(ret)>1:
sys.stdout.write(‘S%d-%d‘%(ret[0],ret[-1]))
elif?len(ret)==1:
sys.stdout.write(str(‘S%s‘)%(ret[0]+‘,‘))
sys.stdout.write(‘\n‘)
if?__name__==‘__main__‘:
f=sys.argv[1]
parse(f)
總結(jié)
以上是生活随笔為你收集整理的python从list中取出连续的数_python list 中找连续的数字(由网友处学习)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
                            
                        - 上一篇: Office 各版本批量授权(VOL)和
 - 下一篇: Android 判断当前联网的类型 wi