国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

python list使用示例 list中找連續(xù)的數(shù)字

2019-11-25 18:32:28
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

線上有個(gè)需求,格式化,從一堆s1,s100-s199中找出連續(xù)的服并且格式化顯示出來(lái),如:

神魔:S106-109,s123,s125
御劍: s106-109,s123,s125

復(fù)制代碼 代碼如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
#  2014/01/15 14:15
import sys
from itertools import *
from operator import itemgetter
def parse(filename):
    d = {}
    for line in open(filename, '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__":
    filename = sys.argv[1]
    parse(filename)

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 榆树市| 普陀区| 临汾市| 高要市| 沈阳市| 沅江市| 甘洛县| 高唐县| 桦甸市| 临高县| 靖宇县| 安远县| 清远市| 刚察县| 鄄城县| 平罗县| 南昌市| 开化县| 无极县| 垦利县| 锦州市| 荃湾区| 威海市| 台南县| 新宾| 乌苏市| 广昌县| 巧家县| 张北县| 遂昌县| 宁化县| 通城县| 沅陵县| 高要市| 渭源县| 遂溪县| 丹寨县| 闻喜县| 嵊泗县| 乌拉特前旗| 鄂托克前旗|