私は出力として以下のようなリストを与えるスクリプトを書いています。ヘッダ付きのPythonでcsvにリストアップする
['red', '361', '0']
['blue', '1', '0']
['orange', '77', '0']
['cream', '660', '73']
['ivory', '159', '0']
このリストは非常に巨大であり、私は以下のように上部のヘッダーにCSVに出力内容を書きたいです。ここで
color | total | fail
は私が
with open('colour.csv', 'wb') as csvfile:
header = ['color', 'total', 'fail']
writer = csv.writer(csvfile, delimiter=',')
writer.writerow(header)
for row in output:
writer.writerow(output)
それを達成しようとしている方法です。しかし、予想通り、私は取得しています出力ではありません。 csvが生成され、リストの最後の行がcsvに3回印刷されます。私はなぜ他のすべての行が印刷されないのか、最後の行が3度印刷されるのをなぜ知ることができませんか?ここ は、私が取得していますサンプル出力です:
color | total | fail
ivory | 159 | 0
ivory | 159 | 0
ivory | 159 | 0
これは私が出力する期待していものです:
color | total | fail
red | 361 | 0
blue | 1 | 0
orange | 77 | 0
cream | 660 | 73
ivory | 159 | 0
誰もこれで私を助けてくださいことはできますか?
はそれは 'writer.writerow(行)'ではないでしょうか? –
'出力の行:writer.writerow(output)'が奇妙に見えますが、現在は出力が未定義です。 – Pythonista
「出力」はどこから来たのですか?それはかなり重要だと思われる。それはすべての行ではなく、最後の行であるようです。 –