6

次のような文字列のリストがある場合:

data = ['a,x', 'b,y', 'c,z']
f = open('data.csv', 'wb')
w = csv.writer(f, delimiter = ',')
w.writerow(data)
f.close()

問題は、次のように1行の3つのセルに保存されることです:( ""は1つのExcelセルです)

"a、x" "b、y" "c、z"

私が本当に欲しいのは次のとおりです。

「a」「x」

"に"

"c" "z"

それらが別々のセルと別々の行にあるように。誰かがこれを正しく行う方法を知っていますか?

4

2 に答える 2

13

リスト(行)のリストを作成し、writerowsを使用してそれらすべてを書き込むことができます。またはそれらをすべて個別に記述します。重要な部分は、行がPythonリストであり、コンマで区切られた値を持つ文字列ではないということです。

data = ['a,x', 'b,y', 'c,z']
f = open('data.csv', 'wb')
w = csv.writer(f, delimiter = ',')
w.writerows([x.split(',') for x in data])
f.close()
于 2012-09-02T23:50:57.620 に答える
2

以下は文字列に対して機能します。

   import csv
   data = ["Apparels,Clothings,Materials,Bazaar,Saree,Salwars"]
   f = open('data.csv', 'w')
   w = csv.writer(f, delimiter = ',')
   w.writerows([x.split(',') for x in data])
   f.close()
于 2017-05-11T16:38:58.523 に答える