Heim  >  Artikel  >  Backend-Entwicklung  >  Erweitern Sie die Liste mit Python in einzelne Elemente

Erweitern Sie die Liste mit Python in einzelne Elemente

WBOY
WBOYnach vorne
2023-09-08 23:57:03873Durchsuche

Erweitern Sie die Liste mit Python in einzelne Elemente

List ist eine leistungsstarke Datenstruktur in Python, die viele verschiedene Arten von Werten enthalten kann. Möglicherweise stoßen wir auf verschachtelte Listen, bei denen die Elemente selbst Listen sind. In diesem Fall kann es entscheidend sein, die Liste zu reduzieren und die einzelnen Elemente aus der Hierarchie abzurufen. In Python haben wir einige eingebaute Funktionen – chain(), extension() und append(), die verwendet werden können, um das Problem der Reduzierung einer Liste in ein einzelnes Element zu lösen.

Nehmen wir ein Beispiel:

Eintreten

# Flatten List
my_list = [[11, 21, 31], [20, 30, 40], [4, 5, 6], [1, 2, 3]]

Ausgabe

# individual element in the list
[11, 21, 31, 20, 30, 40, 4, 5, 6, 1, 2, 3]

Grammatik

Alle Beispiele verwenden die folgende Syntax -

itertools.chain()

itertools ist der Name des Moduls, das die integrierte Funktion chain() bereitstellt. Diese Funktion verwendet mehrere Iteratoren als Argumente und gibt einen einzelnen Iterator zurück.

extend()

extend() ist eine in Python integrierte Methode, die verwendet wird, um ein bestimmtes Listenelement am Ende der aktuellen Liste hinzuzufügen.

append()

append() ist eine in Python integrierte Methode, die Elemente am Ende einer Liste hinzufügt.

[[],[],[]]

Die obige Darstellung veranschaulicht die verschachtelte Listenstruktur.

Verwenden Sie verschachtelte Schleifen

Das Programm verwendet verschachtelte for-Schleifen, um Unterlisten zu durchlaufen, und verwendet zur Unterstützung die Methode append()

Beispiel

Im folgenden Beispiel wird das Programm durch die Definition einer Funktion namens flatten_list gestartet, die ein Argument von lst akzeptiert (um den Wert der Eingabeliste zu empfangen). Erstellen Sie dann eine leere Liste in der Variablen flattened, in der die Liste mit den einzelnen Elementen gespeichert wird. Als nächstes verwenden Sie eine verschachtelte for-Schleife, um jede Unterliste in der Liste zu durchlaufen, und verwenden append(), um die Unterliste in ein einzelnes Element umzuwandeln. Verwenden Sie dann die Funktion return, um die neue Liste abzurufen. Erstellen Sie nun die Flatten-Liste in der Variablen nested_list und speichern Sie sie in der Variablen f_list unter Verwendung derselben Variablen wie der Parameter in der aufrufenden Funktion. Abschließend drucken wir das Ergebnis mit Hilfe der Variablen f_list aus.

def flatten_list(lst):
    flattened = []
    for sublist in lst:
        for item in sublist:
            flattened.append(item)
    return flattened

# Create the flattened list
nested_list = [[10, 20, 30], [40, 50, 60], [70, 80, 90]]
# Calling function used in the variable
f_list = flatten_list(nested_list)
print("The individual element in the list:\n", f_list)

Ausgabe

 The individual element in the list:
 [10, 20, 30, 40, 50, 60, 70, 80, 90]

Verwenden Sie das Listenverständnis

Dieses Programm verwendet Listenverständnis, bei dem verschachtelte for-Schleifen implementiert sind, um Flatten List in einzelne Elemente umzuwandeln.

Beispiel

Im folgenden Beispiel starten Sie das Programm, indem Sie eine Funktion namens flatten_list definieren, die einen Parameter namens lst akzeptiert, der die Werte der Eingabeliste speichert. Die Funktion wird dann mithilfe eines Listenverständnisses zurückgegeben, wobei eine verschachtelte for-Schleife in den Unterlisten iteriert. Erstellen Sie als Nächstes die vereinfachte Liste und speichern Sie sie in der Variablen n_list. Verwenden Sie dann die aufrufende Funktion in der Variablen f_list und verwenden Sie dieselbe Variable in der Druckfunktion, um das Ergebnis zu erhalten.

def flatten_list(lst):
    return [item for sublist in lst for item in sublist]

# Create the flatten list
n_list = [[11, 21, 31], [41, 51, 61], [71, 81, 91]]
# calling function used in the variable
f_list = flatten_list(n_list)
print("The individual element in the list:\n", f_list)

Ausgabe

 The individual element in the list:
 [11, 21, 31, 41, 51, 61, 71, 81, 91]

Verwenden Sie die Funktion itertools.chain()

Dies ist ein Python-Programm, das das itertools-Modul verwendet, um verschachtelte Listen zu reduzieren. Die Funktion flatten_list verwendet eine verschachtelte Liste als Argument und gibt eine neue Liste zurück, die alle Elemente in der Unterliste enthält. Die Funktion itertools.chain fasst alle Unterlisten zu einem iterierbaren Objekt zusammen, das dann mithilfe der Listenfunktion in eine Liste umgewandelt wird. Das Programm erstellt dann eine verschachtelte Liste mit dem Namen „nested_list“, ruft die Funktion „flatten_list“ mit der Liste als Argument auf und weist das Ergebnis der Variablen „flattened_list“ zu.

Beispiel

Im folgenden Beispiel starten Sie das Programm, indem Sie ein Modul namens itertools importieren, das dabei hilft, flache Listen in einzelne Elemente umzuwandeln. Beginnen Sie dann mit der Erstellung der Funktion flatten_list, die den Parameter lst

akzeptiert
import itertools
def flatten_list(lst):
    return list(itertools.chain(*lst))
# Create the flatten list
nested_list = [[12, 22, 32], [42, 52, 62], [72, 82, 92]]
# Calling function used in the variable
flattened_list = flatten_list(nested_list)
print("The individual element in the list:\n", flattened_list)

Ausgabe

 The individual element in the list:
 [12, 22, 32, 42, 52, 62, 72, 82, 92]

Rekursion verwenden

Dieses Programm verwendet eine rekursive Funktion, um die Liste zu reduzieren, und verwendet die integrierte Funktion isintance(), die den Zustand des Objekttyps prüft und dabei hilft, eine reduzierte Liste einzelner Elemente zu erstellen.

Beispiel

Im folgenden Beispiel reduziert das Programm die erstellte Liste iterativ, indem es jedes Element extrahiert. Anschließend wird eine vereinfachte Liste gedruckt, die alle einzelnen Elemente in der verschachtelten Liste enthält.

def flatten_list(lst):
    emp_list = []
    for item in lst:
        if isinstance(item, list):
            emp_list.extend(flatten_list(item))
        else:
            emp_list.append(item)
    return emp_list


# Create the flatten list
nested_list = [[81, 82, 83], [84, 85, 86], [87, 88, 89, 99, 100]]
f_list = flatten_list(nested_list)
print("The individual element in the list:\n", f_list)

Ausgabe

 The individual element in the list:
 [81, 82, 83, 84, 85, 86, 87, 88, 89, 99, 100]

Fazit

Wir haben verschiedene Möglichkeiten zur Lösung der Problemstellung besprochen. Wir sehen, dass das Reduzieren von Listen uns eine wesentliche Fähigkeit verleiht, die es uns ermöglicht, mit komplexen Datenstrukturen zu arbeiten und effizienter auf einzelne Elemente zuzugreifen. Darüber hinaus kann es nützlich sein, zu wissen, wie man eine Liste vereinfacht, unabhängig davon, ob wir an Datenverarbeitung, algorithmischer Problemlösung oder einer anderen Python-Programmieraufgabe oder -aufgabe arbeiten.

Das obige ist der detaillierte Inhalt vonErweitern Sie die Liste mit Python in einzelne Elemente. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen