2017-07-28 3 views
-1

Ich hoffe, dass die Daten wie [[2,3,1],[11,2,4],[8,9,14]] in eine CSV-Datei zu konvertieren und das Format (Zahlen in jeder Zeile in verschiedenen Spalten sind)Konvertieren eine Liste in der Liste in eine CSV-Datei, die von Python

line1: 2 3 1 
line2: 11 2 4 
line3: 8 9 14 

Wenn jedoch ich verwende die folgenden Codes (list ist der Name der Liste sollte umgewandelt werden):

myfile = open('/Users/user/Desktop/list245.csv', 'wb') 
wr = csv.writer(myfile, quoting=csv.QUOTE_ALL) 
wr.writerow(list) 

das Ergebnis ist:

line 1: [2,3,1],[11,2,4],[8,9,14]. Nämlich, jede Nummer ist in der ersten Zeile von verschiedenen Gruppen.

+1

wr.writerows (your_list_of_list) sollte it.https tun: //docs.python.org/3.5/library/csv.html#csv.csvwriter.writerows – yesemsanthoshkumar

Antwort

1

Sie müssen die Liste der Liste zuerst in die Liste konvertieren.

from itertools import chain 
row = list(chain.from_iterable([[2,3,1],[11,2,4],[8,9,14]])) 

Dann können Sie es in CSV-Datei schreiben

with open('/Users/user/Desktop/list245.csv', 'w') as myfile: 
    wr = csv.writer(myfile, quoting=csv.QUOTE_ALL) 
    wr.writerow(row) 
+0

danke, wr.writerow (Liste) oder wr.writerow (Reihe)? – swing

+0

reihe, natürlich ... – Rahul

+0

sieht gut aus, thx – swing

1

Sie Pandas Dataframe direkt in das Format konvertieren verwenden können, um Sie wollen.

import pandas as pd 

my_list = [ [2,3,1] ,[11,2,4], [8,9,14] ] 

df = pd.DataFrame(my_list) 

df.to_csv('out.csv', sep=',', header=None, index=None) 
+0

es funktioniert super! – swing

+0

Gerne helfen! –

+0

@swing wenn Sie meine Antwort richtig finden, bitte markieren Sie sie richtig :) –

Verwandte Themen