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

  • Wie mathematisch subtrahieren Elemente in zwei Listen in Python und nur die Ausgabe dieser Elemente, die eine Bedingung erfüllen?
  • Erstellen eines Wörterbuchs aus einer CSV-Datei?
  • Python mit Aufzählung innerhalb der Liste Verständnis
  • Python-Liste Verständnisse, um mehrere Listen zu erstellen
  • Python verschachteltes Listenverständnis
  • Python-Listen-Verständnis, mit einzigartigen Gegenständen
  • 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.