Python实现文件信息进行合并实例代码

yipeiwu_com5年前Python基础

将电话簿TeleAddressBook.txt和电子邮件EmailAddressBook.txt合并为一个完整的AddressBook.txt

def main():
  ftele1=open("d:\TeleAddressBook.txt","rb")
  ftele2=open("d:\EmailAddressBook.txt","rb")
  ftele1.readline()
  ftele2.readline()
  lines1=ftele1.readlines()
  lines2=ftele2.readlines()
  #建立空列表用于存储姓名电话Email
  list1_name=[]
  list1_tele=[]
  list2_name=[]
  list2_email=[]
  #获取TeleAddressBook
  for line in lines1:
    elements=line.split()
    list1_name.append(str(elements[0].decode("gbk")))
    list1_tele.append(str(elements[1].decode("gbk")))
  #获取EmailAddressBook
  for line in lines2:
    elements=line.split()
    list2_name.append(str(elements[0].decode("gbk")))
    list2_email.append(str(elements[1].decode("gbk"))) 
  lines=[]
  lines.append("姓名\t电话\t\t邮箱\n")
  #按索引方式遍历姓名列表
  for i in range(len(list1_name)):
    s=''
    if list1_name[i] in list2_name:
      j=list2_name.index(list1_name[i])
      s="\t".join([list1_name[i],list1_tele[i],list2_email[j]])
      s+="\n"
    else:
      s="\t".join([list1_name[i],list1_tele[i],str("-----------")])
      s+="\n"
    lines.append(s)
  for i in range(len(list2_name)):
    s=""
    if list2_name[i] not in list1_name:
      s="\t".join([list2_name[i],str("-----------"),list2_email[i]])
      s+="\n"
    lines.append(s)
  #将新生成的合并数据写入新的文件中 
  ftele3=open("d:\AddressBook.txt","w")
  ftele3.writelines(lines)
  #关闭文件
  ftele3.close()
  ftele1.close()
  ftele2.close()
  print("The addressBooks are merged!")
main()

演示结果:

总结

以上就是本文关于Python实现文件信息进行合并实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

python异步任务队列示例

很多场景为了不阻塞,都需要异步回调机制。这是一个简单的例子,大家参考使用吧复制代码 代码如下:#!/usr/bin/env python# -*- coding: UTF-8 -*-im...

Python分布式进程中你会遇到的问题解析

Python分布式进程中你会遇到的问题解析

小惊大怪 你是不是在用Python3或者在windows系统上编程?最重要的是你对进程和线程不是很清楚?那么恭喜你,在python分布式进程中,会有坑等着你去挖。。。(h...

pytorch 可视化feature map的示例代码

之前做的一些项目中涉及到feature map 可视化的问题,一个层中feature map的数量往往就是当前层out_channels的值,我们可以通过以下代码可视化自己网络中某层的f...

浅谈Python在pycharm中的调试(debug)

浅谈Python在pycharm中的调试(debug)

作为一名程序员,调试(debug)程序是一项必会的事情,在利用pycharm这个pythonIDE时,不好好利用其调试功能真的是太可惜了。 借用这两天学习机器学习的工程。 在Deep_...

Python调用C语言的实现

Python中的ctypes模块可能是Python调用C方法中最简单的一种。ctypes模块提供了和C语言兼容的数据类型和函数来加载dll文件,因此在调用时不需对源文件做任何的修改。也正...