【python】python将两个txt按列合并

要点:

  • 使用with打开文件。不需要关闭文件。
  • 使用zip函数组合两个列表。

不带zip的代码,带内联注释:

combine =[]

with open("x.txt") as xh:
  with open('y.txt') as yh:
    with open("z.txt","w") as zh:
      #Read first file
      xlines = xh.readlines()
      #Read second file
      ylines = yh.readlines()
      #Combine content of both lists
      #combine = list(zip(ylines,xlines))
      #Write to third file
      for i in range(len(xlines)):
        line = ylines[i].strip() + ' ' + xlines[i]
        zh.write(line)

 

 

zip带有编码功能的

with open("x.txt") as xh:
  with open('y.txt') as yh:
    with open("z.txt","w") as zh:
      #Read first file
      xlines = xh.readlines()
      #Read second file
      ylines = yh.readlines()
      #Combine content of both lists  and Write to third file
      for line1, line2 in zip(ylines, xlines):
        zh.write("{} {}\n".format(line1.rstrip(), line2.rstrip()))

以上参考:https://www.cnpython.com/qa/81959

以下为自己用时的例子
main_file = []
 
    for m in range(len(file4_list)):
        s=""
        s = "\t".join([file3_list[m],file4_list[m]])
        s+="\n"
        main_file.append(s)

        f=open(folder3 + '\\' + years + '.txt','w')
        f.writelines(main_file)
        f.close()
posted @ 2021-02-06 12:01  人间寒梅  Views(1696)  Comments(0Edit  收藏  举报