我需要逐行浏览2个文本文件并对行进行求和,然后需要在第三个文本文件中返回。
所以如果file1是......
4
2
1
和file2是......
3
2
1
file3是......
7
4
2
我想我想使用for循环来读取第一个文件和readline()以从第二个文件中获取数字,但总结和编写新文件正在让我。到目前为止,这是我不那么出色的方法。
myfile = open(file1)
myfile2 = open(file2)
for line in file1:
p = int(line) + int(myfile2.readlines())
f = open(newFile,"w")
f.write(p)
file1.close()
file2.close()
f.close()
答案 0 :(得分:2)
您需要单独阅读这两个文件,然后使用this将元素从字符串转换为map
,然后使用with open("file1.txt", "r") as f1, open("file2.txt", "r") as f2, open("file3.txt", "w") as f_out:
num_sum = map(sum, zip(map(int, f1.readlines()), map(int, f2.readlines())))
f_out.write("\n".join(map(str, num_sum)))
将它们相加为:
{{1}}
答案 1 :(得分:1)
你可以试试这个:
f = open(file1)
b = open(file2)
sum_list = []
list1 = []
list2 = []
for i in f:
list1.append(int(i))
for i in b:
list2.append(int(i))
for i in range(len(list1)):
sum_list.append(list1[i]+list2[i])
a = open(file3, 'w')
for i in sum_list:
a.write(str(i))
a.write('\n')
这个程序稍微长一点,但说明了没有zip()解决问题的方法。
答案 2 :(得分:0)
使用zip
built-in function,您可以一次迭代两个文件并写入第三个文件:
created() {
this.getPageData()
},