2017-08-30 3 views
1

ich eine Liste von Tupeln innerhalb einer Liste von Tupeln habe, wie folgt aus:Tupel in Tupeln in eine Datei schreiben

a = [(3,140829166, ('a', '96')), (3,141596483, ('b', '96')), (3,193681724, ('c', '99')) ...]

ich möchte diese in eine Datei schreiben, wie folgt aus:

3,140829166 a 96

3.141596483 b 96

3,193681724 c 99

und so weiter ...

So ist die die Umwandlung der Tupel in Strings sind Materie und schwimmt auf Strings die Umwandlung von Tupeln in Strings withing. Ich habe versucht, die Join-Methode, aber es hat irgendwie nicht funktioniert (vielleicht falsche Verwendung).

c = ('\n'.join('{} {}'.format(y[0],y[1]) for y in x[1]) 
a = ('\n'.join('{} {}'.format(x[0],c) for x in a)) 

f2.write(a) 

Als Sie im Voraus für eine Antwort.

+0

Zeigen Sie Ihren Code, bitte – zezollo

+0

Wenn Sie suplement c für x [1] in der zweiten Zeile funktioniert es gut und entfernt den äußeren Tupel (die inneren Überreste). – Robert

Antwort

0

Sie mögen dies tun können,

data_to_file = '\n'.join('{} {} {}'.format(str(i),j[0],j[1]) for i,j in a) 
fp = open(file_name,'w') 
fp.write(data_to_file) 
fp.close()