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


Posted in Python onJanuary 27, 2014

线上有个需求,格式化,从一堆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 相关文章推荐
在Python的Django框架中使用通用视图的方法
Jul 21 Python
python 写的一个爬虫程序源码
Feb 28 Python
用Python将动态GIF图片倒放播放的方法
Nov 02 Python
python3中dict(字典)的使用方法示例
Mar 22 Python
Python基础学习之常见的内建函数整理
Sep 06 Python
PyQt5组件读取参数的实例
Jun 25 Python
python数据归一化及三种方法详解
Aug 06 Python
Python中logging日志库实例详解
Feb 19 Python
python+opencv3生成一个自定义纯色图教程
Feb 19 Python
Anconda环境下Vscode安装Python的方法详解
Mar 29 Python
Keras 数据增强ImageDataGenerator多输入多输出实例
Jul 03 Python
Python中Matplotlib的点、线形状、颜色以及绘制散点图
Apr 07 Python
Python批量修改文件后缀的方法
Jan 26 #Python
使用cx_freeze把python打包exe示例
Jan 24 #Python
Python的函数嵌套的使用方法
Jan 24 #Python
下载安装setuptool和pip linux安装pip    
Jan 24 #Python
python解析文件示例
Jan 23 #Python
python回调函数的使用方法
Jan 23 #Python
python中的对象拷贝示例 python引用传递
Jan 23 #Python
You might like
PHP中使用CURL伪造来路抓取页面或文件
2011/05/04 PHP
PHP使用pcntl_fork实现多进程下载图片的方法
2014/12/16 PHP
php压缩和解压缩字符串的方法
2015/03/14 PHP
PHP7之Mongodb API使用详解
2015/12/26 PHP
ThinkPHP自定义Redis处理SESSION的实现方法
2016/05/16 PHP
javascript中的location用法简单介绍
2007/03/07 Javascript
JS对象与JSON格式数据相互转换
2012/02/20 Javascript
js判断选择的时间是否大于今天的代码
2013/08/20 Javascript
jQuery的图片滑块焦点图插件整理推荐
2014/12/07 Javascript
JavaScript动态添加css样式和script标签
2016/07/19 Javascript
js实现非常棒的弹出div
2016/10/06 Javascript
Vue2学习笔记之请求数据交互vue-resource
2017/02/23 Javascript
详解react如何在组件中获取路由参数
2017/06/15 Javascript
jQuery制作全屏宽度固定高度轮播图(实例讲解)
2017/07/08 jQuery
vue中实现Monaco Editor自定义提示功能
2019/07/05 Javascript
序列化模块json代码实例详解
2020/03/03 Javascript
详解Python的Django框架中的中间件
2015/07/24 Python
python list元素为tuple时的排序方法
2018/04/18 Python
Python使用matplotlib绘制随机漫步图
2018/08/27 Python
Python 获取windows桌面路径的5种方法小结
2019/07/15 Python
Python Tornado实现WEB服务器Socket服务器共存并实现交互的方法
2020/05/26 Python
Python压缩模块zipfile实现原理及用法解析
2020/08/14 Python
介绍CSS3使用技巧5个
2009/04/02 HTML / CSS
Silk’n激光脱毛器官网:silkn.com
2016/10/06 全球购物
全球速卖通俄罗斯站:AliExpress俄罗斯
2019/06/17 全球购物
在C#中如何实现多态
2014/07/02 面试题
银行个人求职自荐信范文
2013/12/16 职场文书
毕业生个人求职信范例分享
2013/12/17 职场文书
追悼会上的答谢词
2014/01/10 职场文书
运动会口号16字
2014/06/07 职场文书
大学生学习计划书
2014/09/15 职场文书
志愿者爱心公益活动策划方案
2014/09/15 职场文书
班主任经验交流材料
2014/12/16 职场文书
2015年酒店工作总结
2015/04/28 职场文书
工资证明范本
2015/06/12 职场文书
go原生库的中bytes.Buffer用法
2021/04/25 Golang