背景:去年的時候哺呜,去一個公司面試契讲,然后出了這道題贬丛,拿出來和大家分享一下
題目:使用python將文件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爵政、對字典進(jìn)行操作并設(shè)置換行符寫入第三方文件test3.txt中
代碼分析
list1 = []
list2 = []
list3 = []
#打開文件test1,將test1文件寫入列表list1中
with open('test1.txt', 'r') as f1:
? ? ?for i in f1.readlines():
? ? ? ? ? ? ? ? ? ?list1.append(i)
#對list1列表里面的每一個字符串元素轉(zhuǎn)成列表使用list2進(jìn)行接收 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))
#將字典寫入文件陶缺,并設(shè)置換行符
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?
截圖: