Heim >Backend-Entwicklung >Python-Tutorial >Wie extrahiere ich Elemente aus einer Liste basierend auf bekannten Indizes?
Mehrere Elemente aus einer Liste basierend auf bekannten Indizes abrufen
Um bestimmte Elemente aus einer Liste mit Kenntnis ihrer Indizes zu extrahieren, können Sie Folgendes verwenden Methoden:
1. Listenverständnis:
Wie Sie bereits gezeigt haben, bieten Listenverständnisse eine prägnante Möglichkeit, Elemente anhand von Indizes zu extrahieren:
a = [-2, 1, 5, 3, 8, 5, 6] b = [1, 2, 5] c = [a[i] for i in b]
2. Operator.itemgetter:
Mit dem Itemgetter-Operator aus dem Operatormodul können Sie Elemente basierend auf einer Folge von Indizes abrufen:
from operator import itemgetter a = [-2, 1, 5, 3, 8, 5, 6] b = [1, 2, 5] print(itemgetter(*b)(a)) # Result: (1, 5, 5)
3. Numpy (falls verfügbar):
Wenn Sie Numpy installiert haben, können Sie seine Array-Indizierungsfunktionen nutzen:
import numpy as np a = np.array([-2, 1, 5, 3, 8, 5, 6]) b = [1, 2, 5] print(list(a[b])) # Result: [1, 5, 5]
Während alle drei Methoden die Aufgabe erfüllen können, ist das Listenverständnis wichtig Der Ansatz gilt im Allgemeinen als der lesbarste und prägnanteste. Wenn Sie jedoch Wert auf Geschwindigkeit oder Effizienz legen, bieten itemgetter oder Numpy möglicherweise eine bessere Leistung.
Das obige ist der detaillierte Inhalt vonWie extrahiere ich Elemente aus einer Liste basierend auf bekannten Indizes?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!