【第22期】观点:IT 行业加班,到底有没有价值?

关于排序的问题

原创 2016年08月28日 14:55:57

下午帮一个妹子去处理一个表,有数据三万多条,要实现先把大类排序,然后再把大类中的小类排序。不同的大类里里面可能有相同大小的小类。举个例子,一个地区里面,有不同的学校(号码不同),先把学校号码进行排序,然后再把每个学校的的学生学习名次进行排序。  注意,这里我把每一行前面三项省略了。如下

07537666X 广东兴业金融服务有限公司成都分公司
052529272 成都锦泓恒肽科技有限公司
597251397 成都黑金科技有限公司
577391309 成都市锦江区三圆颈腰椎病研究院
072429826 厦门市智业软件工程有限公司成都分公司
572291114 成都尊美亿容生物科技有限公司
762348740 四川联动通讯有限公司
069765845 成都尚思合文化传播有限公司
592074213 成都几何新媒科技有限公司
20182003X 四川省装璜设计印务中心
050069591 四川华迪航天金穗高技术有限公司成都分公司

  5101 65
5101 65
5101 73
5101 65
5101 75
5101 63
5101 87
5102 65
5102 74
5102 75
5102 72
5102 65


如上图,就是要先把第一列进行排序,然后对第二列进行排序,这个排序就是对每一个大类(如5101)后面的数进行大小排序。得出这样的结果

5101 63
5101 65
5101 65
5101 73
5101 73
5101 87
5101 87
5102 65
5102 65
5102 73
5102 73
5102 87
 

思路是先把每一行写成一个元组,然后写成一个大的列表,


f.write('行政区域'+','+'行业代码'+','+'单位名称'+','+'营业收入'+','+'frdm'+'\n')
items = []
for line in open(path + 'mengting.csv','r'):
    line = line.strip().split(',')
    c = (line[2][:4],line[3][:2],line[1],line[4],line[0])     #这是把原表中每一行写成了一个元组。
    items.append(c)                                                                 #把所有的项写成了一个列表
item = sorted(items, key=lambda x: (`x[0], x[1].lower()))     #对总列表进行排序
x =len(item)
for each in range(x):
    end = list(item[each])
    f.write(end[0]+','+end[1]+','+end[2]+','+end[3]+','+end[4]+'\n')
f.close()


版权声明: 举报

相关文章推荐

厦门数十家公司的面试经历

厦门数十家公司的面试经历与总结,希望找工作者有用,分享给大家了!

裸辞后,在厦门一个月内面试了24家互联网公司——3年Java开发工程师

博主是2014年6月份毕业的,本文毕业后一直在厦门待,至今工作快三年了。做的工作一直都是Java开发,主要是JavaWeb这一块。其实工作满一年后,在15年跳槽了一次。这次辞职的原因是,工资不高,跟1...

程序员升职加薪指南!还缺一个“证”!

CSDN出品,立即查看!

厦门海实_Day004

现在很多人都找到实习,或是拿到offer,所以去海实的人并不是很多,只有5个人,当时的流程是先做宣讲,然后做逻辑题,吃完饭下午去做技术笔试,笔试题目超级简单,但我还是数据库的知识有遗忘。后面HR跟我们...

银行卡验证代码交流

import java.util.ArrayList; import java.util.List; public class BankCardBin { public static v...

根据银行卡账号获取所属银行php代码

[html] view plain copy php   /**   *   * bank.php文件   *   * User: Administrator   * DateTi...

某些排序问题中元素大小比较的化简以及传递性证明

写这篇博文的原因是因为这个星期遇到了两次这种问题(什么样的排序问题下文马上就说),一开始对题解用到的化简非常的不明白,所幸jxt又教了我为什么,所以自己在这里记下来,以备忘QAQ问题描述刘汝佳的《算法...

“快速排序算法”问题的分而治之算法

<iframe align="center" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog.html" fra...

海量数据处理之排序问题

海量数据处理中一类常见的问题就是排序问题,即对海量数据中的数据进行排序,例如,一个文件中有9亿条不重复的9位整数,对这个文件中数字进行排序。 针对这个问题,最容易想到的方法是将所有数据导入到内存...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)