用python实现两个文本合并

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

一段时间前在网上看到一段面试题,要求如下:

employee文件中记录了工号和姓名

cat employee.txt:

100 Jason Smith

200 John Doe

300 Sanjay Gupta

400 Ashok Sharma

bonus文件中记录工号和工资

cat bonus.txt:

100 $5,000

200 $500

300 $3,000

400 $1,250

要求把两个文件合并并输出如下, 处理结果:

400 ashok sharma $1,250

100 jason smith $5,000

200 john doe $500

300 sanjay gupta $3,000

这个应该是要求用shell来写的,但我的shell功底不怎么样,就用python来实现了

注意,按题目的意思,在输出文件中还需要按照姓名首字母来排序的

1#! /usr/bin/env python2#coding=utf-83fp01 = open("bonus.txt","r")4a =[]5forline01infp01:6a.append(line01)78fp02 = open("employee.txt","r")910fc02 = sorted(fp02, key =lambdax:x.split()[1])1112forline02infc02:13i =014whileline02.split()[0]!=a[i].split()[0]:15i += 116PRint"%s %s %s %s"% (line02.split()[0], line02.split()[1], line02.split()[2], a[i].split()[1])1718fp01.close()19fp02.close()

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航