问题:
有两个txt文件,每个内容都为两列,一列名字和一列数字,左列名字两个文档是相同的,但是右侧数字不同,例如: A.txt文件内容为: 开心 1000 鲜花 2000 B.txt文件内容为: 开心 1050 鲜花 2200 现在需要做的是将两个文档合在一起组成一个4列的文档C.txt,分别是名字、A文档数字、B文档数字、两个数字相差的百分比,例如 开心 1000 1050 105% 鲜花 2000 2200 110%,要求用python实现此功能。
解答:
python合并两个文件。
代码:
def readf(filename):
lines = file(filename).readlines()
dic = {}
for i in lines:
i_ = i.split()
dic[i_[0]] = int(i_[1])
return dic
dica = readf('a.txt')
dicb = readf('b.txt')
#--www.jb200.com--
lines = []
for i in dica:
percent = str(float(dicb[i])*100/dica[i])+'%'
s = ' '.join([i, str(dica[i]), str(dicb[i]), percent])
s += 'n'
lines.append(s)
with open('c.txt', 'w') as f:
f.writelines(lines)
f.close()