ページへ戻る
− Links
印刷
Python/CSVファイルの読み込みと書き込み
の編集 ::
NJF Wiki
xpwiki
:
Python
/
CSVファイルの読み込みと書き込み
の編集
# xda09f1c の編集
ページ内容:
*CSVファイルの書き込み [#xda09f1c] CSVファイルの書き込みの簡単な例として、さきほどのtest.csvをtest_out.csvというファイルに書き込む方法をあげます。そのコードは以下のようになります。 inFile = open("test.csv", 'r') outFile = open('test_out.csv', 'w') csvData = csv.reader(inFile) writer = csv.writer(outFile) for row in csvData: writer.writerow(row) inFile.close() outFile.close() 上の例ではwriterowというメソッドを使って一行ずつ書きましたが、二次元配列に対応したwriterowsというメソッドもあるので、一気に書き出すこともできます。 inFile = open("test.csv", 'r') outFile = open('test_out.csv', 'w') csvData = csv.reader(inFile) writer = csv.writer(outFile) writer.writerows(csvData) inFile.close() outFile.close() UTF-8で試してみると予想通りエラーが出ます。 for row in csvData: r1utf = row[1].decode("utf_8") writer.writerow((row[0],r1utf,row[2])) 結果 Traceback (most recent call last): File "csvTest.py", line 16, in <module> writer.writerow((row[0],r1utf,row[2])) UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128) 書き込むときはstrに変換するのを忘れないようにしましょう。 出力形式はやはりデフォルトではエクセルのCSV書き出しと同じようです。変更も可能ですが、こちらもほとんどの場合そのままで問題ないと思うのでここでは省略します。
編集の要約:
Q & A 認証:
ページ更新時は次の質問にお答えください。(プレビュー時は必要ありません)
Q:
日本の首都は?(漢字で)
A:
お名前:
タイムスタンプを変更しない
テキスト整形のルールを表示する
[1]
Links list
(This host) = https://njf.jp
(This host)
/cms/modules/xpwiki/?cmd=edit&help=true&page=Python%2FCSV%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%81%BF%E3%81%A8%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF