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 相关文章推荐
Python 异常处理实例详解
Mar 12 Python
Python中使用items()方法返回字典元素对的教程
May 21 Python
Python基于正则表达式实现检查文件内容的方法【文件检索】
Aug 30 Python
详解Python中is和==的区别
Mar 21 Python
Python2和Python3的共存和切换使用
Apr 12 Python
Python 学习教程之networkx
Apr 15 Python
PyTorch: 梯度下降及反向传播的实例详解
Aug 20 Python
Python + Flask 实现简单的验证码系统
Oct 01 Python
在Python中使用filter去除列表中值为假及空字符串的例子
Nov 18 Python
python GUI库图形界面开发之PyQt5时间控件QTimer详细使用方法与实例
Feb 26 Python
python3中sys.argv的实例用法
Apr 24 Python
python迷宫问题深度优先遍历实例
Jun 20 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入门教程之Zend Studio设置与开发实例
2016/09/09 PHP
php array_merge_recursive 数组合并
2016/10/26 PHP
Yii2实现多域名跨域同步登录退出
2017/02/04 PHP
javascript函数以及基础写法100多条实用整理
2013/01/13 Javascript
有关于JS构造函数的重载和工厂方法
2013/04/07 Javascript
javascript实现的一个带下拉框功能的文本框
2014/05/08 Javascript
解决jQuery uploadify在非IE核心浏览器下无法上传
2015/08/05 Javascript
JavaScript学习小结(7)之JS RegExp
2015/11/29 Javascript
基于javascript实现listbox左右移动
2016/01/29 Javascript
js和jQuery设置Opacity半透明 兼容IE6
2016/05/24 Javascript
jQuery继承extend用法详解
2016/10/10 Javascript
微信小程序 教程之WXML
2016/10/18 Javascript
原生js实现日期计算器功能
2017/02/17 Javascript
AngularJS实现的获取焦点及失去焦点时的表单验证功能示例
2017/10/25 Javascript
vue二级路由设置方法
2018/02/09 Javascript
vue监听键盘事件的快捷方法【推荐】
2018/07/11 Javascript
12 种使用Vue 的最佳做法
2020/03/30 Javascript
Vue中el-form标签中的自定义el-select下拉框标签功能
2020/04/20 Javascript
如何解决jQuery 和其他JS库的冲突
2020/06/22 jQuery
Vue 实现对quill-editor组件中的工具栏添加title
2020/08/03 Javascript
vue 解决data中定义图片相对路径页面不显示的问题
2020/08/13 Javascript
Pyhton中防止SQL注入的方法
2015/02/05 Python
Python利用多进程将大量数据放入有限内存的教程
2015/04/01 Python
python实现的简单猜数字游戏
2015/04/04 Python
python类:class创建、数据方法属性及访问控制详解
2016/07/25 Python
django实现前后台交互实例
2017/08/07 Python
Python中数组,列表:冒号的灵活用法介绍(np数组,列表倒序)
2018/04/18 Python
浅谈python 读excel数值为浮点型的问题
2018/12/25 Python
解决pyinstaller打包pyqt5的问题
2019/01/08 Python
Numpy将二维数组添加到空数组的实现
2019/12/05 Python
Python调用.NET库的方法步骤
2019/12/27 Python
Python flask框架实现浏览器点击自定义跳转页面
2020/06/04 Python
四风问题对照检查整改措施思想报告
2014/10/05 职场文书
销售经理工作失职检讨书
2014/10/24 职场文书
在前女友婚礼上,用Python破解了现场的WIFI还把名称改成了
2021/05/28 Python
Elasticsearch 数据类型及管理
2022/04/19 Python