日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python将两个文件合并_python实现两个文件合并功能

發布時間:2023/12/20 python 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python将两个文件合并_python实现两个文件合并功能 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這篇文章主要為大家詳細介紹了python實現兩個文件合并功能,一個簡單的文件合并程序,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文將會分析一個文件合并的程序,并指出在合并文件過程中需要注意的問題。

下面是需要合并的文件示例:

分析思路:

要將兩個文件合并,首先要將文件讀到內存中,成為列表。再將列表分割,按照類別將數據分開存儲,即姓名、電話、郵箱。通過遍歷列表1,依次與列表2比較,如果二者有重合的人,那么直接利用 .join([ ])姓名電話郵箱合并到一行,保存到另外一個列表變量里面。二者不重合的人,說明只有列表1中才有,故將此人的郵箱信息用str(‘—–')代替。

經過這次遍歷之后,列表1中所有的人和列表2中與列表1中重復的人,都重新整合到了新的列表變量里面。接下來還需要把列表2中特有的人,添加到新的列表變量中。方法是遍歷列表2,把與列表1不重合的人取出來保存。

最后要將新的列表變量中的數據寫入到新的文件中,并關閉所有文件。

流程圖如下:

代碼如下:

"""

Created on Fri Aug 4 12:59:36 2017

@author: 13323

"""

# This program can combine two or more files into one file.

def main():

#firstly open the files

data1 = open("test_3.txt","rb")

data2 = open("test_4.txt","rb")

# read the data in file into list

data1.readline() #only read one line, skip the first line

data2.readline() #only read one line, skip the first line

file1 = data1.readlines() #read all variable into list file1

file2 = data2.readlines() #read all variable into list file2

#print(file1)

#define particular list to store variable

file1_name = []

file1_tel = []

file2_name = []

file2_email = []

#file3 = []

#split file1 into two part

for line in file1:

element = line.split() #line.split(); devide by ' '

file1_name.append(str(element[0].decode('gbk')))

file1_tel.append(str(element[1].decode('gbk')))

#split file2 into two part

for line in file2:

element = line.split()

file2_name.append(str(element[0].decode('gbk')))

file2_email.append(str(element[1].decode('gbk')))

# pick up the name in the file1 same as the name in the file2 and combine

file3 = []

for i in range(len(file1_name)):

s = ''

if file1_name[i] in file2_name:

j = file2_name.index(file1_name[i])

s = '\t'.join([file1_name[i],file1_tel[i],file2_email[j]])

s += '\n'

else:

s = '\t'.join([file1_name[i],file1_tel[i],str("----")])

s += '\n'

file3.append(s)

#pick up the name in the file1 doesn't same as the name in the file2

for i in range(len(file2_name)):

s = ''

if file2_name[i] not in file1_name:

s = '\t'.join([file2_name[i],str('----'),file2_email[i]])

s += '\n'

file3.append(s)

#write the data into file3

data3 = open("test_5.txt","w")

data3.writelines(file3)

#close the file

data1.close()

data2.close()

data3.close()

main()

關鍵點:

編碼與解碼

列表合并與拆解

相關推薦:

以上就是python實現兩個文件合并功能的詳細內容,更多請關注php中文網其它相關文章!

本文原創發布php中文網,轉載請注明出處,感謝您的尊重!

總結

以上是生活随笔為你收集整理的python将两个文件合并_python实现两个文件合并功能的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。