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

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

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()

时间: 2024-10-25 22:46:03

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

在PostgreSQL中实现按拼音、汉字、拼音首字母搜索的例子

在PostgreSQL中实现按拼音.汉字.拼音首字母搜索的例子 作者 digoal 日期 2016-11-09 标签 PostgreSQL , 拼音 , 中文分词 , tsvector , 拼音首字母 , hmm , 词库 背景 PostgreSQL有很多特性是可以提升开发效率,提高生产力的. 在前端页面中,搜索是一个非常常用的功能,例如淘宝首页的搜索. 为了提升用户体验,用户可以按拼音首字母进行搜索,按中文单词搜索,或者按拼音的全部进行搜索. 又比如家里的电视盒子,因为没有实体键盘,按拼音首字

Python中实现两个字典(dict)合并的方法_python

本文实例讲述了Python中实现两个字典(dict)合并的方法,分享给大家供大家参考.具体方法如下: 现有两个字典dict如下: dict1={1:[1,11,111],2:[2,22,222]} dict2={3:[3,33,333],4:[4,44,444]} 合并两个字典得到类似: {1:[1,11,111],2:[2,22,222],3:[3,33,333],4:[4,44,444]} 方法1: dictMerged1=dict(dict1.items()+dict2.items())

python实现合并两个数组的方法

  本文实例讲述了python实现合并两个数组的方法.分享给大家供大家参考.具体如下: python合并两个数组,将两个数组连接成一个数组,例如,数组 a=[1,2,3] ,数组 b=[4,5,6],连接后:[1,2,3,4,5,6] 方法1 ? 1 2 3 a=[1,2,3] b=[4,5,6] a=a+b 方法2 ? 1 2 3 a=[1,2,3] b=[4,5,6] a.extend(b) 希望本文所述对大家的Python程序设计有所帮助.

横向滑动-Android中用首字母排序的listview中的item的滑动监听与listview的上下滑动冲突

问题描述 Android中用首字母排序的listview中的item的滑动监听与listview的上下滑动冲突 大神帮看看,我现在listview的item中我写了一个OnTouchListener,但是发现横向滑动的时候老是会触发listview的上下滑动事件,导致横向滑动很难滑出来,但是滑出来第一次后,后面就很容易划出来了!大神帮忙看看!!!感谢! 让人很是苦恼,这个该怎么处理呢?查过资料说改返回值为false,改了都滑不出来! /** * 侧滑显示删除按钮 */ private View.

Python中的对象,方法,类,实例,函数用法分析_python

本文实例分析了Python中的对象,方法,类,实例,函数用法.分享给大家供大家参考.具体分析如下: Python是一个完全面向对象的语言.不仅实例是对象,类,函数,方法也都是对象. 复制代码 代码如下: class Foo(object):     static_attr = True     def method(self):         pass foo = Foo() 这段代码实际上创造了两个对象,Foo和foo.而Foo同时又是一个类,foo是这个类的实例. 在C++里类型定义是在编

python中的实例方法、静态方法、类方法、类变量和实例变量浅析_python

注:使用的是Python2.7. 一.实例方法 实例方法就是类的实例能够使用的方法.如下: 复制代码 代码如下: class Foo:    def __init__(self, name):        self.name = name    def hi(self):        print self.name if __name__ == '__main__':    foo01 = Foo('letian')    foo01.hi()    print type(Foo)    p

Python中的特殊语法:filter、map、reduce、lambda介绍_python

filter(function, sequence):对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuple(取决于sequence的类型)返回: 复制代码 代码如下: >>> def f(x): return x % 2 != 0 and x % 3 != 0 >>> filter(f, range(2, 25)) [5, 7, 11, 13, 17, 19, 23] >>

python中关于时间和日期函数的常用计算总结(time和datatime)_python

1.获取当前时间的两种方法: 复制代码 代码如下: import datetime,timenow = time.strftime("%Y-%m-%d %H:%M:%S")print nownow = datetime.datetime.now()print now 2.获取上个月最后一天的日期(本月的第一天减去1天) 复制代码 代码如下: last = datetime.date(datetime.date.today().year,datetime.date.today().mon

IOS中获取本地通讯录联系人以及汉字首字母排序_IOS

iOS中获取手机通讯录中的联系人信息: /*** 加载本地联系人*/ - (void)loadLocalContacts { //新建一个通讯录类 ABAddressBookRef addressBooks = nil; if (DeviceVersion < 6.0) { addressBooks = ABAddressBookCreate(); } else { addressBooks = ABAddressBookCreateWithOptions(NULL, NULL); //获取通讯