【Python】CSV出力時に1文字ずつ改行が入る、または1文字ずつカンマが入る場合の対処法

Python

PythonでCSVに出力する時には以下のように記述しますが、1文字ずつ改行されてしまったり1文字ごとにカンマが入ってしまうことがあります。

実はCSV出力には2つのメソッドがあり、使い分けが必要です。

  • writerow
  • writerows

writerowは1次元配列の場合に使用し、writerowsは2次元配列の場合に使用します。

共通している点はどちらも配列に使用するということです。

実は文字列に使用すると、文字列を配列をみなして、1文字ずつに分解されてしまいます。

では今からその例と、対処法を見ていきましょう。

例① 1文字ずつカンマが入る場合

以下のコードを実行すると1文字ずつカンマが入ってしまいます。メソッドはwriterowを使用しています。

出力結果

C,S,V,に,出,力

1文字ずつカンマが挿入されてしまっています。

例② 1文字ずつ改行される場合

以下のコードを実行すると1文字ずつ改行されてしまいます。メソッドはwriterowsを使用しています。

出力結果

C

S

V

1文字ずつ改行が入っています。

対処方法

では対象方法をご紹介します。

まずメソッドはwriterowを使用します。

そしてwriterowの()の中の変数を[]で囲みます。

修正後の以下のコードを実行してみましょう。

出力結果

CSVに出力

期待通りの結果を得ることができました!

要するにwriterowメソッドは配列に対して使用するものなので、引数を[]で囲むことで配列化したということですね!

さいごに

いかがでしたでしょうか。

今回はPythonでCSV出力時に改行されて困っていたり、カンマが入ってしまう場合の対処法をご紹介しました。

少しでもこの記事が皆様のお役に立てれば幸いです。

コメント

タイトルとURLをコピーしました