Python List Comprehension, Anhängen, Sortieren, Länge [BEISPIELE]
Was ist eine Python-Liste?
Eine Liste ist genau das, wonach es sich anhört, ein Container, der verschiedene Python-Objekte enthält, bei denen es sich um Ganzzahlen, Wörter, Werte usw. handeln kann. Es ist das Äquivalent zu einem Array in anderen Programmiersprachen. Es wird durch eckige Klammern dargestellt (und dies ist eines der Attribute, das es von Tupeln unterscheidet, die durch Klammern getrennt sind). Es ist auch änderbar, dh es kann modifiziert oder aktualisiert werden; im Gegensatz zu Tupeln, die unveränderlich sind.
In diesem Python-Tutorial lernen Sie:
- Was ist eine Python-Liste?
- Beispiele für Python-Listen:
- Auf Werte in Listen zugreifen
- Slicing von Python-Listen
- Listen aktualisieren
- Listenelemente löschen
- Anhängen von Listenelementen
- Integrierte Funktionen (Methoden) auflisten
- Listen durchlaufen
- Listenverständnis-Python
Beispiele für Python-Listen:
Python-Listen können homogen sein, was bedeutet, dass sie denselben Objekttyp enthalten können; oder heterogen, einschließlich verschiedener Arten von Objekten.
Beispiele für homogene Listen sind:
list of integers = [1, 2, 3, 8, 33] list of animals = ['dog', 'cat', 'goat'] list of names = ['John', 'Travis', 'Sheila'] list of floating numbers = [2.2, 4.5, 9.8, 10.4]
Beispiele für heterogene Listen sind:
[2, 'cat', 34.33, 'Travis'] [2.22, 33, 'pen']
Auf Werte in Listen zugreifen
Um auf Werte innerhalb von Listen zuzugreifen, kann der Index der Objekte innerhalb der Listen verwendet werden. Ein Index in Python-Listen bezieht sich auf die Position eines Elements innerhalb einer geordneten Liste. Zum Beispiel:
list = [3, 22, 30, 5.3, 20]
- Der erste Wert in der obigen Liste, 3, hat einen Index von 0
- Der zweite Wert, 22, hat einen Index von 1
- Der dritte Wert, 30, hat einen Index von 2
usw. Um auf jeden der Werte aus der Liste zuzugreifen, würden Sie Folgendes verwenden:
list[0] to access 3 list[1] to access 22 list[2] to access 30 list[3] to access 5.3 list[4] to access 20
Auf das letzte Element einer Liste kann auch mit dem Index -1 zugegriffen werden. Zum Beispiel
list[-1] = 20
Slicing von Python-Listen
List Slicing ist die Methode, eine Teilmenge einer Liste aufzuteilen, und dazu werden auch die Indizes der Listenobjekte verwendet. Verwenden Sie zum Beispiel das gleiche Listenbeispiel oben;
list[:] = [3, 22, 30, 5.3, 20] (all the members of the list]; list[1:3] = [22, 30] (members of the list from index 1 to index 3, without the member at index 3); list[:4] = [3, 22, 30, 5.3] (members of the list from index 0 to index 4, without the member at index 4) list[2:-1] = [30, 5.3] (members of the list from index 2, which is the third element, to the second to the last element in the list, which is 5.3).
Python-Listen sind exklusiv für die Obergrenze, was bedeutet, dass der letzte Index während des Aufteilens von Listen normalerweise ignoriert wird. Deshalb
list[2:-1] = [30, 5.3]
, und nicht [30, 5.3, 20]. Dasselbe gilt für alle anderen oben angegebenen List Slicing-Beispiele.
Listen aktualisieren
Nehmen wir an, Sie haben eine Liste =[Physik, Chemie, Mathematik], und Sie möchten die Liste in [Biologie, Chemie, Mathematik] ändern, wodurch das Element am Index 0 effektiv geändert wird. Dies kann leicht erreicht werden, indem Sie diesen Index dem zuweisen neues Mitglied, das Sie möchten.
Das heißt,
list = [physics, chemistry, mathematics] list[0] = biology print(list)
Ausgabe:[Biologie, Chemie, Mathematik]
Dadurch wird das Element bei Index 0 (Physik) durch den gewünschten neuen Wert (Chemie) ersetzt. Dies kann für jedes Mitglied oder jede Teilmenge der Liste erfolgen, die Sie ändern möchten.
Um ein weiteres Beispiel zu geben; Nehmen wir an, Sie haben eine Liste mit dem Namen Ganzzahlen, die die Zahlen [2, 5, 9, 20, 27] enthält. Um 5 in dieser Liste durch 10 zu ersetzen, können Sie das tun mit:
integers = [2, 5, 9, 20, 27] integers[1] = 10 print(integers) >>> [2, 10, 9, 20, 27]
Um das letzte Mitglied der Liste der Ganzzahlen, nämlich 27, durch eine freie Zahl wie 30,5 zu ersetzen, würden Sie Folgendes verwenden:
integers = [2, 5, 9, 20, 27] integers[-1] = 30.5 print(integers) >>> [2, 5, 9, 20, 30.5]
Listenelemente löschen
Es gibt 3 Python-Methoden zum Löschen von Listenelementen:list.remove(), list.pop() und del-Operator. Die Remove-Methode nimmt das zu entfernende Element als Argument, während pop und del den Index des zu entfernenden Elements als Argument verwenden. Zum Beispiel:
Liste =[3, 5, 7, 8, 9, 20]
Um 3 (das 1. Element) aus der Liste zu löschen, könnten Sie Folgendes verwenden:
- list.remove(3) oder
- list.pop[0], oder
- del list[0]
Um 8, das Element bei Index 3, aus der Liste zu löschen, könnten Sie Folgendes verwenden:
- list.remove(8), oder
- list.pop[3]
Anhängen von Listenelementen
Um Elemente an eine Liste anzuhängen, wird die Append-Methode verwendet, die das Element an das Ende der Liste anfügt.
Zum Beispiel:
list_1 = [3, 5, 7, 8, 9, 20] list_1.append(3.33) print(list_1) >>> list_1 = [3, 5, 7, 8, 9, 20, 3.33] list_1.append("cats") print(list_1) >>> list_1 = [3, 5, 7, 8, 9, 20, 3.33, "cats"]
Integrierte Funktionen (Methoden) auflisten
Das Folgende ist eine Liste der eingebauten Funktionen und Methoden mit ihren Beschreibungen:
- len(list): dies ergibt die Länge der Liste als Ausgabe. Zum Beispiel:
numbers = [2, 5, 7, 9] print(len(numbers)) >>> 4
- max(Liste): gibt das Element in der Liste mit dem maximalen Wert zurück. Zum Beispiel:
numbers = [2, 5, 7, 9] print(max(numbers)) >>> 9
- Min(Liste): gibt das Element in der Liste mit dem Mindestwert zurück. Zum Beispiel:
numbers = [2, 5, 7, 9] print(min(numbers)) >>> 2
- Liste(Tupel): wandelt ein Tupelobjekt in eine Liste um. Zum Beispiel;
animals = (cat, dog, fish, cow) print(list(animals)) >>> [cat, dog, fish, cow]
- list.append (Element):fügt das Element an die Liste an. Zum Beispiel;
numbers = [2, 5, 7, 9] numbers.append(15) print(numbers) >>> [2, 5, 7, 9, 15]
- list.pop (Index):Entfernt das Element am angegebenen Index aus der Liste. Zum Beispiel;
numbers = [2, 5, 7, 9, 15] numbers.pop(2) print(numbers) >>> [2, 5, 9, 15]
- list.remove (Element):löscht das Element aus der Liste. Zum Beispiel;
values = [2, 5, 7, 9] values.remove(2) print(values) >>> [5, 7, 9]
- list.reverse ():Kehrt die Objekte der Liste um. Zum Beispiel;
values = [2, 5, 7, 10] values.reverse() print(values) >>> [10, 7, 5, 2]
- list.index (Element):um den Indexwert eines Elements innerhalb der Liste zu erhalten. Zum Beispiel;
animals = ['cat', 'dog', 'fish', 'cow', 'goat'] fish_index = animals.index('fish') print(fish_index) >>> 2
- Summe (Liste):um die Summe aller Werte in der Liste zu erhalten, wenn die Werte alle Zahlen (Ganzzahlen oder Dezimalzahlen) sind. Zum Beispiel;
values = [2, 5, 10] sum_of_values = sum(values) print(sum_of_values) >>> 17
Wenn die Liste ein Element enthält, das keine Zahl ist, z. B. eine Zeichenfolge, würde die sum-Methode nicht funktionieren. Sie würden eine Fehlermeldung erhalten, die besagt:„TypeError :nicht unterstützte(r) Operandentyp(en) für +:‚int‘ und ‚str‘“
- list.sort():um eine Liste von Ganzzahlen, Fließkommazahlen oder Strings in aufsteigender oder absteigender Reihenfolge anzuordnen. Zum Beispiel:
values = [1, 7, 9, 3, 5] # To sort the values in ascending order: values.sort() print(values) >>> [1, 3, 5, 7, 9]
Ein weiteres Beispiel:
values = [2, 10, 7, 14, 50] # To sort the values in descending order: values.sort(reverse = True) print(values) >>> [50, 14, 10, 7, 2]
Eine Liste von Zeichenfolgen kann auch sortiert werden, entweder alphabetisch oder nach Länge der Zeichenfolgen. Zum Beispiel;
# to sort the list by length of the elements strings = ['cat', 'mammal', 'goat', 'is'] sort_by_alphabet = strings.sort() sort_by_length = strings.sort(key = len) print(sort_by_alphabet) print(sort_by_length) >>> ['cat', 'goat', 'is', 'mammal'] ['is', 'cat', 'goat', 'mammal']
Wir können dieselbe Liste alphabetisch sortieren, indem wir „Strings“ verwenden.
Listen durchlaufen
Das Durchlaufen von Listen kann genauso erfolgen wie jede andere Schleifenfunktion in Python. Auf diese Weise kann eine Methode auf mehreren Elementen einer Liste gleichzeitig ausgeführt werden. Zum Beispiel:
Liste =[10, 20, 30, 40, 50, 60, 70].
Um alle Elemente dieser Liste zu durchlaufen, und sagen wir, 10 zu jedem Element hinzuzufügen:
for elem in list: elem = elem + 5 print(elem) >>>>15 25 35 45 55 65 75
Um die ersten drei Elemente der Liste zu durchlaufen und alle zu löschen;
for elem in list[:3]: list.remove(elem) >>>list = [40, 50, 60, 70]
Zum Durchlaufen der 3. rd (Index 2) bis zum letzten Element in der Liste und hängen sie an eine neue Liste namens new_list:
annew_list = [] for elem in list[2:]: new_list.append(elem) print(“New List: {}”.format(new_list)) Output: New List: [30, 40, 50, 60, 70]
Auf diese Weise kann jede Methode oder Funktion auf die Mitglieder einer Liste angewendet werden, um eine bestimmte Operation auszuführen. Sie können entweder alle Mitglieder der Liste durchlaufen oder eine Teilmenge der Liste durchlaufen, indem Sie List Slicing verwenden.
Listenverständnis-Python
List Comprehensions sind Python-Funktionen, die zum Erstellen neuer Sequenzen (z. B. Listen, Wörterbücher usw.) unter Verwendung bereits erstellter Sequenzen verwendet werden. Sie tragen dazu bei, längere Schleifen zu reduzieren und Ihren Code leichter lesbar und wartungsfreundlicher zu machen.
Zum Beispiel; Angenommen, Sie wollten eine Liste erstellen, die die Quadrate aller Zahlen von 1 bis 9 enthält:
list_of squares = [] for int in range(1, 10): square = int ** 2 list_of_squares.append(square) print(list_of_squares) List_of_squares using for loop: [1, 4, 9, 16, 25, 36, 49, 64, 81]
Um dasselbe mit Listenverständnissen zu tun:
list_of_squares_2 = [int**2 for int in range(1, 10)] print('List of squares using list comprehension: {}'.format(list_of_squares_2)) Output using list comprehension: [1, 4, 9, 16, 25, 36, 49, 64, 81]
Wie oben zu sehen ist, ist das Schreiben des Codes mit List Comprehensions viel kürzer als die Verwendung traditioneller for-Schleifen und auch schneller. Dies ist nur ein Beispiel für die Verwendung von Listenverständnissen anstelle von for-Schleifen, aber dies kann repliziert und an vielen Stellen verwendet werden, an denen auch for-Schleifen verwendet werden können. Manchmal ist es die bessere Option, mit einer for-Schleife zu arbeiten, besonders wenn der Code komplex ist, aber in vielen Fällen wird das Listenverständnis Ihre Codierung einfacher und schneller machen.
Nachfolgend finden Sie eine Tabelle mit einigen Listenfunktionen und -methoden sowie deren Beschreibungen.
Integrierte Funktionen
FUNKTION | BESCHREIBUNG |
---|---|
Runde() | Rundet die als Argument übergebene Zahl auf eine angegebene Anzahl von Ziffern und gibt den Gleitkommawert zurück |
Min() | Mindestelement einer gegebenen Liste zurückgeben |
Max() | gibt das maximale Element einer gegebenen Liste zurück |
len() | Gibt die Länge der Liste zurück |
Aufzählen() | Diese integrierte Funktion generiert sowohl die Werte als auch die Indizes von Elementen in einer Iterable, sodass wir nicht manuell zählen müssen |
Filter() | testet, ob jedes Element einer Liste wahr ist oder nicht |
Lambda | Ein Ausdruck, der an Stellen erscheinen kann, an denen ein def (zum Erstellen von Funktionen) nicht syntaktisch ist, innerhalb eines Listenliterals oder der Aufrufargumente einer Funktion |
Karte() | gibt eine Liste der Ergebnisse zurück, nachdem die gegebene Funktion auf jedes Element eines gegebenen Iterables angewendet wurde |
Akkumulieren() | wende eine bestimmte, in ihrem Argument übergebene Funktion auf alle Listenelemente an, gibt eine Liste zurück, die die Zwischenergebnisse enthält |
Summe() | Gibt die Summe aller Zahlen in der Liste zurück |
Cmp() | Dies wird zum Vergleichen zweier Listen verwendet und gibt 1 zurück, wenn die erste Liste größer als die zweite Liste ist. |
Einfügen | Element zum Auflisten an bestimmter Position einfügen |
Listenmethoden
FUNKTION | BESCHREIBUNG |
---|---|
Anhängen() | Fügt ein neues Element am Ende der Liste hinzu |
Löschen() | Entfernt alle Elemente aus der Liste |
Kopieren() | Gibt eine Kopie der ursprünglichen Liste zurück |
Erweitern() | Fügen Sie viele Elemente am Ende der Liste hinzu |
Anzahl() | Gibt die Anzahl der Vorkommen eines bestimmten Elements in einer Liste zurück |
Index() | Gibt den Index eines bestimmten Elements einer Liste zurück |
Pop() | Löscht Element aus der Liste an einem bestimmten Index (Löschen nach Position) |
Entfernen() | Löscht das angegebene Element aus der Liste (Löschen nach Wert) |
Umgekehrt() | In-Place-Umkehrmethode, die die Reihenfolge der Elemente der Liste umkehrt |
Zusammenfassung
- Eine Liste ist genau das, wonach es sich anhört, ein Container, der verschiedene Python-Objekte enthält, bei denen es sich um Ganzzahlen, Wörter, Werte usw. handeln kann.
- Python-Listen können homogen sein, dh sie können denselben Objekttyp enthalten; oder heterogen, die verschiedene Arten von Objekten enthalten.
- Um auf Werte innerhalb von Listen zuzugreifen, kann der Index der Objekte innerhalb der Listen verwendet werden.
- List Slicing ist die Methode, eine Teilmenge einer Liste aufzuteilen, und dazu werden auch die Indizes der Listenobjekte verwendet.
- Drei Methoden zum Löschen von Listenelementen sind:1)list.remove(), 2)list.pop() und 3)del-Operator
- Append-Methode wird zum Anhängen von Elementen verwendet. Dadurch wird das Element am Ende der Liste hinzugefügt.
- Die Schleifenmethode des Python-Programms kann gleichzeitig auf mehrere Elemente einer Datenliste angewendet werden.
- List Comprehensions sind Python-Funktionen, die zum Erstellen neuer Sequenzen (z. B. Listen, Wörterbücher usw.) unter Verwendung bereits erstellter Sequenzen verwendet werden.
Python