2016-11-17 1 views
0

Lassen Sie uns sagen, dass wir dieses:Liste der Listen; Wie verknüpfe ich jeden Wert mit einer neuen Liste?

list1 = [['a', 'b', 'c'], ['1', '2', '3'], ['x', 'y', 'z'], ['4', '5', '6']] 

Der Ausgang ich suche ist:

[['a', '1', 'x', '4'], ['b', '2', 'y', '5'], ['c', '3', 'z', '6']] 

Hinweis: die Länge von list1 länger oder kürzer sein könnte, sollte Angelegenheit nicht.

Hinweis: len(list1[0]) = len(list1[1]) = len(list1[any_index]) bedeutet, dass alle Unterlisten in der Hauptliste die gleiche Länge haben.

Ich habe versucht, verschiedene for-Schleifen verwenden verschiedene Möglichkeiten, um die Indizes zu verwenden, aber ich kann nichts zur Arbeit, kann mir jemand helfen? Ich suche keinen Code in der Antwort, nur wie ich es machen würde.

+0

Verwenden 'zip'. 'zip (* list1)' –

+0

Versuchen Sie 'zip (* list1)' –

+0

Wir müssen sehen, was Sie versucht haben. Bitte posten Sie Ihre Versuche –

Antwort

2

Wenn Sie mit Tupeln in Ordnung sind, benutzen Sie einfach:

a = zip(*list1) 
# [('a', '1', 'x', '4'), ('b', '2', 'y', '5'), ('c', '3', 'z', '6')] 

Ansonsten tun nur

a = [list(x) for x in zip(*list1)] 
# [['a', '1', 'x', '4'], ['b', '2', 'y', '5'], ['c', '3', 'z', '6']] 
Verwandte Themen