#利用字符串和列表将两个通讯录文本合并为一个文本
来源:互联网 发布:中医诊断软件 编辑:程序博客网 时间:2024/05/18 03:06
#利用字符串和列表将两个通讯录文本合并为一个文本def main(): ftele1=open('name.txt','rb') ftele2=open('email.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() 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]]) 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('result.txt', 'w') ftele3.writelines(lines) ftele3.close() ftele1.close() ftele2.close() print("The addressBooks are merged!")if __name__ == "__main__": main()
阅读全文
0 0
- 利用字符串和列表将两个通讯录文本合并为一个文本
- 利用字符串和列表将两个通讯录文本合并为一个文本
- #利用字符串和列表将两个通讯录文本合并为一个文本
- 利用字典将两个通讯录的文本合并为一个文本
- 字典实例:利用字典将两个通讯录文本合并为一个文本
- 将两个表序列表合并为一个有序列表
- 将两个字符串合并为一个字符串并且输出
- 实现一个通讯录并将信息保存到文本中
- 实现一个通讯录并将信息保存到文本中
- 将一行字符串整理为规范文本
- Javascript函数将文本拆分为相同长度的两个字符串
- 将两个Wav文件合并为一个
- 用sed和awk实现将文本中的上下两行合并为一行
- iOS-SQLite中怎么将两个字段字符串合并连接为一个
- SQLite中怎么将两个字段字符串合并连接为一个
- 把文本合并成字符串
- 通过输入cmd命令提示符将txt多个文本合并成一个文本
- 通过输入cmd命令将保存在文件夹里的所有文本合并成一个文本
- HDU 2017 新生赛 正品概率 (全概率公式 贝叶斯公式)
- Dijkstra最短路径算法的java实现
- 敏捷开发实践总结
- 归并排序(1)
- hdu3584三维树状数组
- #利用字符串和列表将两个通讯录文本合并为一个文本
- 2017年12月3日训练总结
- C语言编写程序计时
- 第三方支付异步通知的陷阱
- 关于android开发BLE连接成功读写操作为什么gattback未回调的问题处理
- asio::run和post
- HDOJ 2568 前进(水)
- C语言读取系统当前时间
- ubuntu 关闭开机启动服务