多かれ少なかれこのように見える入力csvファイルの数が不明です(幅をさまざまな長さに設定します)
Header1, Header2, Header3, Header4
1,2,3,4
11,22,33,44
1,2,3,4
出力は次のようになります。
Header1,Header3, ,Header1,Header3, ,...
1,3, ,1,3, ,...
...
現在、すべての入力ファイルを文字列に読み取ることができ、各ファイルの最初の行を読み取って目的の形式で出力する方法を知っていますが、ループを作成して各ファイルの次の行に移動する方法に行き詰まり、そのデータを印刷します。ファイルが終了したときの長さが異なるため、それを処理する方法がわかりません。形式を維持するためのプレースホルダーとして空白を入れます。以下は私のコードです。
csvs = []
hold = []
i=0 # was i=-1 to start, improved
for files in names:
i=i+1
csvs.append([i])
hold.append([i])
#z=0
for z in range(i):
# putting csv files into strings
csvs[z] = csv.reader(open(names[z],'rb'), delimiter=',')
line = []
#z=0
for z in range(i):
hold[z]=csvs[z].next()
line = line + [hold[z][0], hold[z][3], ' ']
print line
writefile.writerow(line)
names は、csv ファイルのパスを保持する文字列です。また、私はこれにかなり慣れていないので、私が物事をより良くできる場所を見つけたら、私はすべて耳にします.