
すいません質問があります。
pythonでリストをCSVに出力する際に、インデックスごとに改行したいです。
下記のPythonのコードを実行すると、
CSV内で、
abc,def と A1, A2に配置されてしまいます。
しかし、今回やりたいのは、
abc
def
とすることです。
そのやり方をぜひとも教えてほしいです。
import csv
csvlist = ["abc","def"]
f = open("output.csv", "w")
writecsv = csv.writer(f, lineterminator='\n')
writecsv.writerow(csvlist)
f.close()
お手数をおかけしますがよろしくお願いいたします。
No.5ベストアンサー
- 回答日時:
#1の方法は
for x in csvlist:write:
で リストの1要素を取り出し
csv.writerow(x)
でcsvとして書き込んでいます。
このとき、 x は csvlistの1要素なので「文字列」です。
文字列は「1文字ずつが並んだシーケンシャル」として解釈されます。
csvwriter.writerowメソッドは、「シーケシャルデータを受け取って、その各要素をdelimiterで指定した文字で区切って出力する」というものです。
つまり、 csv.writerow(x) では「 xの文字列を1文字ずつカンマに区切って出力」することになります。
出力したいのは x そのものなのですから、writerowには「 要素が x 一つだけのシーケンシャル」を指定する必要があります。
例えば csv.writerow( (x,) ) とタプルにする、等。
で、そんな面倒なことするよりは、f.writeメソッドを使って f.write(x + '\n') とでもした方がいいのではないでしょうか。
csvモジュールを使う必要はありません。
No.3
- 回答日時:
lineterminator は改行コードを指定するもので、 カンマを改行に変更すうものではありません。
区切りを変えるのは delimiter です。
ただ、リストの内容を改行して出力したい、というだけならcsvモジュールを使う必要は無く、
・for で 1つずつ 改行付けて出力
・ https://docs.python.org/ja/3/library/stdtypes.ht … を使って改行で連結して出力
でいいのでは?
No.1
- 回答日時:
それこそリストの中身をインデックス毎に分割してませんしね。
なのでそのようにリストの値が一回で書き出されるのでしょう。
import csv
csvlist = ["abc","def"]
f = open("output.csv", "w")
writecsv = csv.writer(f, lineterminator='\n')
for x in csvlist:writecsv.writerow(x) #ここでリストを要素毎に分割して書き込みをする。
f.close()
結果:
a,b,c
d,e,f
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) python 気象データの取得 2 2023/06/20 23:54
- その他(プログラミング・Web制作) pythonのpandasのcsvの外部結合(outer_join)した際に列が想定とは異なる事象 1 2022/05/25 13:23
- Visual Basic(VBA) vbaマクロについて 次のようなマクロを組みたいです。 自分は初心者なので全くわかりません。 詳しく 8 2023/05/18 18:38
- その他(プログラミング・Web制作) 【Python初学者】以下コードについて教えていただきたいです 4 2023/04/19 13:01
- AJAX RPA(PowerAutomate)の実装について 1 2023/07/31 13:46
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- その他(プログラミング・Web制作) データ解析ソフトRでのファイル入力read.csvがエラーになります 7 2022/03/27 22:11
- その他(プログラミング・Web制作) bashかpythonでcsvファイルの空欄に0を追加する方法 3 2022/05/31 00:11
- Visual Basic(VBA) マクロを教えてください。 7 2023/06/01 19:47
- Visual Basic(VBA) VBAで出力したCSVファイルの先頭にカンマを挿入したい 5 2022/10/14 12:20
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vba クリップボードクリアにつ...
-
Geminiフォーム 画像生成で 人...
-
画像生成AIのプロンプトの作り...
-
CSVファイルの複数行削除
-
Python... 環境設定 初心者です...
-
pythonの実行に関する質問
-
数学、プログラミング、物理、...
-
pip --versionがエラーになる
-
OS入ってる機器のソフト・アプ...
-
パイソンのソースコードをChatG...
-
Python 3.12.2 か一番最新のパ...
-
正規表現で複数マッチ条件で悩...
-
Google ColaboでGUI作成
-
アルゴリズムとコードとは何で...
-
ネットワークフォルダの中身を...
-
python言語について。
-
matplotlibでのLaTex表示
-
ウェブサイトのアクセスログに...
-
VBSでテキストファイルの2行目...
-
AIの登場でプログラマーたちが...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでcsvファイルもシートもあ...
-
Excelマクロ 空白セルを無視し...
-
【ExcelVBA】300万件越えCSVか...
-
ダブルコーテーション付きでCSV...
-
ファイル名を変数で書きこむfwr...
-
VBAで複数のCSVからレコードセ...
-
CSVデータの文字列置換
-
複数のファイルをまたぐエクセ...
-
CSVファイルの比較と結果の取得...
-
【C#】 csvファイルをバイナリ...
-
PowerShellからGhostscriptを動...
-
EXCEL→CSV保存時のダブルクォー...
-
VB.NETでオブジェクトの内容を...
-
パイソン文法で ファイルオープ...
-
VB.netでShellExecuteがしたい
-
PowerShellでファイルの連結方法
-
Rubyを使用してcsvファイルを処...
-
rubyを用いたCSVファイルの分割...
-
バッチファイルでcsvファイルに...
-
エクセルの任意のシートをcs...
おすすめ情報
失礼しました。
下記修正させていただきます。
間違い:abc,def と A1, A2に配置されてしまいます。
正しい:abc,def と A1, B1に配置されてしまいます。
しかし、今回やりたいのは、
abc
def
とA1, A2することです。
めぐみん_ さん
ありがとうございます!
あと1つだけ質問させてください。
a,b,c
d,e,f
こちらを
abc
def
とする方法があったりしますかね・・・・?
カンマで1文字ずつ区切らず、かつ、改行させたく・・・
お手数をおかけしますがよろしくお願いいたします。