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

相关文章

flask使用session保存登录状态及拦截未登录请求代码

本文主要研究的是flask使用session保存登录状态及拦截未登录请求的相关内容,具体介绍如下。 前端请求form: <form action="/user/add" met...

在cmd命令行里进入和退出Python程序的方法

在cmd命令行里进入和退出Python程序的方法

进入: 直接输入python即可,如图所示 退出: 1:输入exit(),回车 2:输入quit(),回车 3:输入ctrl+z,回车 以上这篇在cmd命令行里进入和退出Python程...

Python实现的多叉树寻找最短路径算法示例

本文实例讲述了Python实现的多叉树寻找最短路径算法。分享给大家供大家参考,具体如下: 多叉树的最短路径: 思想:     传入start 和 end 两...

解决Mac下首次安装pycharm无project interpreter的问题

Pycharm本身并不带编译器,所以第一次用需要自己下载编译器插件。 1、首先去 https://www.python.org/downloads/ 这个网址去下载对应的python版本...

django实现同一个ip十分钟内只能注册一次的实例

很多小伙伴都会有这样的问题,说一个ip地址十分钟内之内注册一次,用来防止用户来重复注册带来不必要的麻烦 逻辑: 取ip,在数据库找ip是否存在,存在判断当前时间和ip上次访问时间之差,小...