python一道面試題文件合并

背景:去年的時候,去一個公司面試,然后出了這道題,拿出來和大家分享一下

題目:使用python將文件test1.txt和test2.txt合并生成test3.txt的形式

test1.txt



test2.txt


test3.txt

思路:

1、使用列表list2接收test1里的數(shù)字,使用列表list3接收test2里面的字母2

2、列表list2和列表list3 組合成字典

{'1': 'a', '2': 'b', '3': 'c', '4': 'd', '5': 'e', '6': 'f', '7': 'h', '8': 'j', '9': 'g'}

3、對字典進行操作并設置換行符寫入第三方文件test3.txt中

代碼分析

list1 = []

list2 = []

list3 = []

#打開文件test1,將test1文件寫入列表list1中

with open('test1.txt', 'r') as f1:

? ? ?for i in f1.readlines():

? ? ? ? ? ? ? ? ? ?list1.append(i)

#對list1列表里面的每一個字符串元素轉成列表使用list2進行接收 for j in range(len(list1)):? ? ? ? ? ? ? for j in range(len(list1)):

? ? ? ? ? ? ? ? ? ? for k in list(list1[j].strip()):

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?list2.append(k)

list1 = []

with open('test2.txt', 'r') as f2:

? ? ?for i in f2.readlines():

? ? ? ? ? ? ? ? ? ? ? list1.append(i)

? ? ? for j in range(len(list1)):

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?for k in list(list1[j].strip()):

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?list3.append(k)

#兩個列表組成字典

dt = dict(zip(list2, list3))

#將字典寫入文件,并設置換行符

with open('test3.txt', 'w') as f3:

? ? ? ? i = 1

? ? ? ? for k, v in dt.items():

? ? ? ? ? ? ? ? ? ? ?f3.write(k)

? ? ? ? ? ? ? ? ? ? ?f3.write(v)

? ? ? ? ? ? ? ? ? ? ?if i % 3 ==0:

? ? ? ? ? ? ? ? ? ? ? ? ? ? f3.write('\n')? ??

? ? ? ? ? ? ? ? ? ? ?i = i? + 1?

截圖:


代碼截圖


運行結果
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容