利用字符串和列表将两个通讯录文本合并为一个文本
来源:互联网 发布:美工提升 编辑:程序博客网 时间:2024/05/21 17:00
#利用字符串和列表将两个通讯录文本合并为一个文本def main(): ftele1=open('tele.txt','rb') #以二进制打开不会丢失回车换行等符号 ftele2=open('address.txt','rb') ftele1.readline()#跳过第一行 ftele2.readline() lines1 = ftele1.readlines() #保存成列表,每行为一个字符串 lines2 = ftele2.readlines() list1_name = [] list1_tele = [] list2_name = [] list2_email = [] for line in lines1:#获取第一个文本中的姓名和电话信息 elements = line.split() #每一行分割成字符串列表存到elements里 list1_name.append(str(elements[0].decode('gbk'))) list1_tele.append(str(elements[1].decode('gbk'))) #将文本读出来的bytes转换为str类型 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 邮箱\n') #按索引方式遍历姓名列表1 for i in range(len(list1_name)): s= '' if list1_name[i] in list2_name: j = list2_name.index(list1_name[i]) #找到姓名列表1对应列表2中的姓名索引位置 s = '\t'.join([list1_name[i], list1_tele[i], list2_email[j]])#join的处理对象为字符串列表,只有一个对象,加[],内用,隔开 s += '\n' else: s = '\t'.join([list1_name[i], list1_tele[i], str(' ----- ')]) s += '\n' lines.append(s) #处理姓名列表2中剩余的姓名 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('book.txt', 'w') ftele3.writelines(lines) ftele3.close() ftele1.close() ftele2.close() print("The addressBooks are merged!") if __name__ == "__main__": main()文件:tele
姓名 电话号码
王五 13242345643
张三 12390288389
李四 13287968758
赵六 10384948383
文件:address
姓名 邮箱
王五 34234234@
李四 24345234@
网银 41234232@
赵六 werwewe@
合并结果:
姓名 电话 邮箱
王五 34234234@ 13242345643
李四 24345234@ 13287968758
网银 41234232@ -----
赵六 werwewe@ 10384948383
张三 ----- 12390288389
0 0
- 利用字符串和列表将两个通讯录文本合并为一个文本
- 利用字符串和列表将两个通讯录文本合并为一个文本
- #利用字符串和列表将两个通讯录文本合并为一个文本
- 利用字典将两个通讯录的文本合并为一个文本
- 字典实例:利用字典将两个通讯录文本合并为一个文本
- 将两个表序列表合并为一个有序列表
- 将两个字符串合并为一个字符串并且输出
- 实现一个通讯录并将信息保存到文本中
- 实现一个通讯录并将信息保存到文本中
- 将一行字符串整理为规范文本
- Javascript函数将文本拆分为相同长度的两个字符串
- 将两个Wav文件合并为一个
- 用sed和awk实现将文本中的上下两行合并为一行
- iOS-SQLite中怎么将两个字段字符串合并连接为一个
- SQLite中怎么将两个字段字符串合并连接为一个
- 把文本合并成字符串
- 通过输入cmd命令提示符将txt多个文本合并成一个文本
- 通过输入cmd命令将保存在文件夹里的所有文本合并成一个文本
- java通过ip获取网卡MAC地址
- 关爱自身健康,自身健康才是硬实力
- php mbstring扩展概要
- 【神经网络与深度学习】【计算机视觉】SSD
- 数据分析和数据可视化(第一讲)
- 利用字符串和列表将两个通讯录文本合并为一个文本
- 如何配置二级缓存
- 【EJB体系结构】
- 134. Gas Station Add to List
- Python爬虫系列(一)初期学习爬虫的拾遗与总结
- openfire服务器
- ubuntu 14.04 server搭建+NVIDIA+CUDA+CUDNN+caffe+theano+tensorflow+keras+matlab
- 【神经网络与深度学习】【计算机视觉】YOLO2
- Codeforces 467B Fedor and New Game