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

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实现两个文本合并的更多相关文章

  1. python将两个数组合并成一个数组的两种方法的代码

    内容过程中,把写内容过程中常用的内容收藏起来,下面的资料是关于python将两个数组合并成一个数组的两种方法的内容,希望能对小伙伴们有帮助. c1 = ["Red","G ...

  2. python中将两个list合并为字典

    两个list合并为字典的代码如下: def Run(): list2 = [1, 2, 3, 4, 5 ]; list3 = ["a", "b", " ...

  3. python基础===两个list合并成一个dict的方法

    def Run(): list2 = [, , , , ]; list3 = ["a", "b", "c", "d",& ...

  4. Python将两个数组合并成一个数组,多维数组变成一维数组

    1.extend方法 c1 = ["Red","Green","Blue"] c2 = ["Orange"," ...

  5. 【转载】Python中如何高效实现两个字典合并,三种方法比较。

    本文转载自:http://www.pythoner.com/13.html Python中将两个字典进行合并操作,是一个比较常见的问题.本文将介绍几种实现两个字典合并的方案,并对其进行比较. 对于这个 ...

  6. 手写面试编程题- 数组去重 深拷贝 获取文本节点 设置奇数偶数背景色 JS中检测变量为string类型的方法 第6题闭包 将两个数组合并为一个数组 怎样添加、移除、移动、复制、创建和查找节点? 继承 对一个数组实现随机排序 让元素水平 垂直居中的三种方式 通过jQuery的extend方法实现深拷贝

    第1题==>实现数组去重 通过 new Set(数组名) // var arr = [12, 12, 3, 4, 5, 4, 5, 6, 6]; // var newarr1 = new Set ...

  7. python两个列表合并为字典,一个作为key,一个作为value

    两个列表合并为一个字典函数list_dic(list1,list2)可以直接复制拿走 传入的参数为两个列表,list1准备作为key,list2准备作为value,key和value位置一一对应. d ...

  8. python两个字典合并,两个list合并

    1.两个字典:a={'a':1,'b':2,'c':3} b= {'aa':11,'bb':22,'cc':33} 合并1:dict(a,**b)  操作如下: 合并2:dict(a.items()+ ...

  9. python 实现两个文本文件内容去重

    实现两个文本内容去重,输出两个文本不重复的结果 两个测试文本内容如下 1.txt中内容为 1 2 3 4 5 6 7 8 2.txt中内容为 1 2 3 4 5 6 7 8 9 10 11 12 13 ...

随机推荐

  1. OC之protocol监听器的实现

    画图 图解 代码 总结 一.画图 本人画了一个图(字体和画图水平请忽略) 二.图解 1.首先我们上边是一个按钮的类,按钮当中包括了一条线,这个线是什么呢? 其实难理解就难理解到这条线上了 1⃣️这条线 ...

  2. Git 暂存区

    可以用 git log 查看提交日志(附加的 --stat 参数可以看到每次提交的文件变更统计). $ cd /path/to/my/workspace/demo $ git log --stat 如 ...

  3. Hadoop2.0重启脚本

    Hadoop2.0重启脚本 方便重启带ha的集群,写了这个脚本 #/bin/bash sh /opt/zookeeper-3.4.5-cdh4.4.0/bin/zkServer.sh restart ...

  4. 索引与优化like查询

    1. like %keyword    索引失效,使用全表扫描.但可以通过翻转函数+like前模糊查询+建立翻转函数索引=走翻转函数索引,不走全表扫描. 2. like keyword%    索引有 ...

  5. hust 1017 DLX

    #include<set> #include<cmath> #include<queue> #include<cstdio> #include<v ...

  6. C#基础回顾以及if语句

    一.输入和输出Console.Write("字符串")Console.WriteLine("字符串")string s = Console.ReadLine() ...

  7. JavaScript之延迟加载

    本文参阅http://www.appelsiini.net/projects/lazyload Javascript Lazyload延迟加载特效,有效降低HTPP连接次数,提高首屏加载时间 1.增加 ...

  8. IOS小知识纪录

    1.scrollView缩放 #import "ViewController.h" @interface ViewController () <UIScrollViewDel ...

  9. c# 读取远程主机性能计数器

    PerformanceCounter pc = new PerformanceCounter("Web Service", "Current Connections&qu ...

  10. UI3_UILabel

    // // AppDelegate.m // UI3_UILabel // // Created by zhangxueming on 15/6/29. // Copyright (c) 2015年 ...