2016-06-22 15 views
-3

私はこれを100回実行しましたが、何らかの理由でこれを動作させることができません。私は間違って何をしていますか?CSVへの書き込み

csv_file = open('test_a.csv', 'wb') 
writer = csv.writer(csv_file) 
writer.writerow('test') 

OR

csv_file = open('test_a.csv', 'wb') 
writer = csv.writer(csv_file) 
writer.writerows(['test']) 

OR

csv_file = open('test_a.csv', 'a') 
writer = csv.writer(csv_file) 
writer.writerow('test') 

CSVファイルが作成されますが、何も書き込まれます。

+1

あなたは、エラーメッセージや予期しない出力を得るのですか? –

+0

updated私の質問 –

+1

関連していませんが、なぜバイナリモードでファイルを開いていますか?また、ファイルを検査するとき、またはこの進行中のループであるときにプログラムが終了していますか? –

答えて

1

コールファイルオブジェクトまたはオープンwithコンテキストマネージャ上.close()

with open('test_a.csv', 'wb') as csv_file: 
    writer = csv.writer(csv_file) 
    writer.writerow(['test']) 
+0

"with"の使用と使用しないことの違いは何ですか? –

+0

'csv_file.close()'を呼び出す負担を軽減できます。一旦 'with'コンテキストが終了すると、Pythonは閉じてクリーンアップします。 –

+0

はそれを得ました。それはうまくいった!ありがとうございました –

-1

writerowメソッドには値のリストが必要です。あなたはそれをiterableできる文字列を与えている..あなたはおそらくあなたが望むものではないt, e, s, tで終わる。リストを渡していることを確認してください:

writer.writerow(['test']) 
+0

残念ながら、CSVファイルには何も書き込まれていません。理由はわかりません –

+0

あなたのコードを実行しましたが、この問題以外で動作しました。しかし、後でファイルを閉じました。あなたはファイルを閉じていますか? –

関連する問題