python合并文本文件示例

yipeiwu_com7年前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()

相关文章

Django使用Channels实现WebSocket的方法

Django使用Channels实现WebSocket的方法

WebSocket - 开启通往新世界的大门 WebSocket是什么? WebSocket是一种在单个TCP连接上进行全双工通讯的协议。WebSocket允许服务端主动向客户端推...

python实现旋转和水平翻转的方法

如下所示: # coding=utf-8 import glob import os from PIL import Image def rotate_270(imgae):...

Python函数的默认参数设计示例详解

在Python教程里,针对默认参数,给了一个“重要警告”的例子: def f(a, L=[]): L.append(a) return L print(f(1)) prin...

opencv 获取rtsp流媒体视频的实现方法

获取实时数据 import cv2 # user: admin # pwd: 12345 # main: 主码流 # ip: 192.168.1.64 # Channels: 实时...

详解用python实现简单的遗传算法

详解用python实现简单的遗传算法

今天整理之前写的代码,发现在做数模期间写的用python实现的遗传算法,感觉还是挺有意思的,就拿出来分享一下。 首先遗传算法是一种优化算法,通过模拟基因的优胜劣汰,进行计算(具体的算法...