Listenverständnis, um verschiedene Listen in Python zu verschmelzen

Ich muss viele Datenproben zeichnen, die jeweils in einer Liste von ganzen Zahlen gespeichert sind. Ich möchte eine Liste aus einer Vielzahl von verketteten Listen erstellen, um sie mit Aufzählung (big_list) zu zeichnen, um eine feste Offset-x-Koordinate zu erhalten. Mein aktueller Code ist:

biglist = [] for n in xrange(number_of_lists): biglist.extend(recordings[n][chosen_channel]) for x,y in enumerate(biglist): print x,y 

Anmerkungen: number_of_lists und selected_channel sind ganzzahlige Parameter, die an anderer Stelle definiert sind, und print x, y ist zum Beispiel (eigentlich gibt es andere Aussagen, um die Punkte zu zeichnen.

Meine Frage ist: Gibt es einen besseren Weg, zum Beispiel Listenverständnisse oder andere Operationen, um das gleiche Ergebnis (fusionierte Liste) ohne die Schleife und die vordefinierte leere Liste zu erreichen?

Vielen Dank

  • Python - Finden von übergeordneten Tasten für einen bestimmten Wert in einem verschachtelten Wörterbuch
  • Python-Liste Verständnisse, um mehrere Listen zu erstellen
  • Erstellen eines Wörterbuchs aus einer CSV-Datei?
  • Python verschachteltes Listenverständnis
  • Auswahl von Elementen aus einer Python-Liste mit spezifischen Indizes
  • Python's effizienteste Möglichkeit, die längste String in der Liste zu wählen?
  • 2 Solutions collect form web for “Listenverständnis, um verschiedene Listen in Python zu verschmelzen”

     import itertools for x,y in enumerate(itertools.chain(*(recordings[n][chosen_channel] for n in xrange(number_of_lists))): print x,y 

    Sie können an itertools.chain() denken, itertools.chain() einen Iterator über die einzelnen Listen verwalten. Es erinnert sich an welche Liste und wo in der Liste du bist. Das spart dir alles Gedächtnis, das du brauchst, um die große Liste zu erstellen.

     >>> import itertools >>> l1 = [2,3,4,5] >>> l2=[9,8,7] >>> itertools.chain(l1,l2) <itertools.chain object at 0x100429f90> >>> list(itertools.chain(l1,l2)) [2, 3, 4, 5, 9, 8, 7] 
    Python ist die beste Programmiersprache der Welt.