0

100個の異なるファイルを1つに結合したい。

データを含むファイルの例:

example1.txt の形式は次のとおりです。

  something
  something 
  somehting

example2.txt の形式は次のとおりです。

 something
 something 
 somehting

100個のファイルはすべて同じ形式のデータを持ち、example1.....example100という共通名も持っています。これは、例が同じで番号があることを意味します。

from itertools import chain


 infiles = [open('{}_example.txt'.format(i+1), 'r') for i in xrange(113)]
 with open('example.txt', 'w') as fout:
      for lines in chain(*infiles):
            fout.write(lines)

私はこれを使用しましたが、問題は前のファイルの最後に結合された次のファイルの最初の行です

4

2 に答える 2

2

100 個のファイルがある場合は、ファイルの配列を使用することをお勧めします。

infiles = [open('example{}.txt'.format(i+1), 'r') for i in xrange(100)]
with open('Join.txt', 'w') as fout:
    for lines in izip_longest(*infiles, fillvalue=''):
        lines = [line.rstrip('\n') for line in lines]
        print >> fout, separator.join(lines)
于 2013-02-23T19:56:55.103 に答える
0

書き込み可能な新しいファイル join.txt を開き、範囲 (1,100) で必要なファイルをループします。

join = open('Join.txt','w')
for file in range(1,100):
  file = open('example'+file+'.txt','r')
  file = file.readlines()
  for line in file:
    join.write(line)
于 2013-02-23T19:59:25.913 に答える