python list使用示例 list中找连续的数字

 更新时间:2014年01月27日 09:36:39   作者:  
这篇文章主要介绍了list中找连续的数字的示例,大家参考使用吧

线上有个需求,格式化,从一堆s1,s100-s199中找出连续的服并且格式化显示出来,如:

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

复制代码 代码如下:

#!/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)

相关文章

  • Python简直是万能的,这5大主要用途你一定要知道!(推荐)

    Python简直是万能的,这5大主要用途你一定要知道!(推荐)

    这篇文章主要介绍了Python主要用途,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • Python中isnumeric()方法的使用简介

    Python中isnumeric()方法的使用简介

    这篇文章主要介绍了Python中isnumeric()方法的使用,isnumeric()方法的使用是Python入门中的基础知识,需要的朋友可以参考下
    2015-05-05
  • Python中常用的内置函数

    Python中常用的内置函数

    这篇文章主要介绍了Python中常用的内置函数,主要介绍内容有map()、filter()、all()、int()等更多相关函数,需要的小伙伴可以参考一下
    2022-04-04
  • python使用numpy中的size()函数实例用法详解

    python使用numpy中的size()函数实例用法详解

    在本篇文章里小编给整理的是一篇关于python使用numpy中的size()函数实例用法详解内容,有兴趣的朋友们可以学习下。
    2021-01-01
  • pandas的排序、分组groupby及cumsum累计求和方式

    pandas的排序、分组groupby及cumsum累计求和方式

    这篇文章主要介绍了pandas的排序、分组groupby及cumsum累计求和方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • 使用Python爬虫框架获取HTML网页中指定区域的数据

    使用Python爬虫框架获取HTML网页中指定区域的数据

    在当今互联网时代,数据已经成为了一种宝贵的资源,无论是进行市场分析、舆情监控,还是进行学术研究,获取网页中的数据都是一个非常重要的步骤,Python提供了多种爬虫框架来帮助我们高效地获取网页数据,本文将详细介绍如何使用Python爬虫框架来获取HTML网页中指定区域的数据
    2025-03-03
  • Python调用Pandas实现Excel读取

    Python调用Pandas实现Excel读取

    这篇文章主要为大家介绍了在Python中如何调用Pandas实现Excel文件的读取,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下
    2022-04-04
  • 一文详解如何创建自己的Python装饰器

    一文详解如何创建自己的Python装饰器

    python装饰器在平常的python编程中用到的还是很多的,本篇文章中我们将来介绍一下python中最常使用的@staticmethod装饰器的使用,感兴趣的可以了解一下
    2022-09-09
  • python实现对指定字符串补足固定长度倍数截断输出的方法

    python实现对指定字符串补足固定长度倍数截断输出的方法

    今天小编就为大家分享一篇python实现对指定字符串补足固定长度倍数截断输出的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • 如何基于Python实现自动扫雷

    如何基于Python实现自动扫雷

    这篇文章主要介绍了如何基于Python实现自动扫雷,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01

最新评论