python中合并两个文本文件并按照姓名首字母排序的例子


Posted in Python onApril 25, 2014

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

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来实现了

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

#! /usr/bin/env python
#coding=utf-8
fp01 = open("bonus.txt", "r")
a = []
for line01 in fp01:
    a.append(line01)
fp02 = open("employee.txt", "r")
fc02 = sorted(fp02, key = lambda x:x.split()[1])
for line02 in fc02:
    i = 0
    while line02.split()[0]!=a[i].split()[0]:
        i += 1
    print "%s %s %s %s" % (line02.split()[0], line02.split()[1], line02.split()[2], a[i].split()[1])
fp01.close()
fp02.close()
Python 相关文章推荐
Python3中类、模块、错误与异常、文件的简易教程
Nov 20 Python
5个很好的Python面试题问题答案及分析
Jan 19 Python
Python cookbook(数据结构与算法)让字典保持有序的方法
Feb 18 Python
Window10+Python3.5安装opencv的教程推荐
Apr 02 Python
django session完成状态保持的方法
Nov 27 Python
Django 路由控制的实现
Jul 17 Python
python中with语句结合上下文管理器操作详解
Dec 19 Python
python 统计文件中的字符串数目示例
Dec 24 Python
PyInstaller将Python文件打包为exe后如何反编译(破解源码)以及防止反编译
Apr 15 Python
Python 跨.py文件调用自定义函数说明
Jun 01 Python
python 读取.nii格式图像实例
Jul 01 Python
python安装及变量名介绍详解
Dec 12 Python
使用Python进行新浪微博的mid和url互相转换实例(10进制和62进制互算)
Apr 25 #Python
Python time模块详解(常用函数实例讲解,非常好)
Apr 24 #Python
Python 时间操作例子和时间格式化参数小结
Apr 24 #Python
python抓取网页图片并放到指定文件夹
Apr 24 #Python
python字符串替换示例
Apr 24 #Python
python自动安装pip
Apr 24 #Python
python网络编程示例(客户端与服务端)
Apr 24 #Python
You might like
解析php中heredoc的使用方法
2013/06/17 PHP
php curl post 时出现的问题解决
2014/01/30 PHP
php示例详解Constructor Prototype Pattern 原型模式
2015/10/15 PHP
PHP多维数组排序array详解
2017/11/21 PHP
W3C Group的JavaScript1.8 新特性介绍
2009/05/19 Javascript
javascript与asp.net(c#)互相调用方法
2009/12/13 Javascript
比Jquery的document.ready更快的方法
2010/04/28 Javascript
JavaScript高级程序设计 阅读笔记(七) ECMAScript中的语句
2012/02/27 Javascript
js中array的sort()方法使用介绍
2014/02/20 Javascript
2016年最热门的15 款代码语法高亮工具,美化你的代码
2016/01/06 Javascript
JS Ajax请求如何防止重复提交
2016/06/13 Javascript
轮播的简单实现方法
2016/07/28 Javascript
利用JavaScript实现拖拽改变元素大小
2016/12/14 Javascript
Nodejs高扩展性的模板引擎 functmpl简介
2017/02/13 NodeJs
jQuery初级教程之网站品牌列表效果
2017/08/02 jQuery
微信小程序踩坑记录之解决tabBar.list[3].selectedIconPath大小超过40kb
2018/07/04 Javascript
详解微信小程序中组件通讯
2018/10/30 Javascript
create-react-app使用antd按需加载的样式无效问题的解决
2019/02/26 Javascript
python 从远程服务器下载东西的代码
2013/02/10 Python
在Python中操作时间之mktime()方法的使用教程
2015/05/22 Python
解析Python中的生成器及其与迭代器的差异
2016/06/20 Python
Python第三方库xlrd/xlwt的安装与读写Excel表格
2017/01/21 Python
python中pandas.DataFrame排除特定行方法示例
2017/03/12 Python
基于python select.select模块通信的实例讲解
2017/09/21 Python
python抓取网页中链接的静态图片
2018/01/29 Python
Python发展简史 Python来历
2019/05/14 Python
Python数据可视化实现漏斗图过程图解
2020/07/20 Python
canvas之自定义头像功能实现代码示例
2017/09/29 HTML / CSS
Booking.com英国官网:全球酒店在线预订网站
2018/04/21 全球购物
佳能法国商店:Canon法国
2019/02/14 全球购物
白俄罗斯在线大型超市:e-dostavka.by
2019/07/25 全球购物
面试后的英文感谢信
2014/02/01 职场文书
合作意向书范本
2014/03/31 职场文书
英语感谢信范文
2015/01/20 职场文书
个性与发展自我评价
2015/03/06 职场文书
导游词之徐州云龙湖
2019/11/19 职场文书