Zusammenfassung der integrierten Methoden usw. der Python-Liste

Vor

Überprüfen Sie, ob es sich in einer Liste oder einem Wörterbuch befindet: in

Wenn Sie den Code im Format "Beliebiger Wert in Zielliste" schreiben, können Sie den booleschen Wert abrufen, ob der Wert in der Liste enthalten ist oder nicht.

Der folgende Code ruft beispielsweise den booleschen Wert ab, ob der Wert 200 in der Liste enthalten ist (True wird zurückgegeben, weil er enthalten ist).

list_value = [100, 200, 300]
is_in = 200 in list_value
print(is_in)

Ausgabeinhalt des Ergebnisses der Codeausführung:

True

Wenn Sie einen Wert (500) angeben, der nicht in der Liste enthalten ist, wie im folgenden Code gezeigt, wird False zurückgegeben.

list_value = [100, 200, 300]
is_in = 500 in list_value
print(is_in)

Ausgabeinhalt des Ergebnisses der Codeausführung:

False

Fügen Sie am Ende der Liste einen Wert hinzu: Methode anhängen

Verwenden Sie die Append-Methode, um am Ende der Liste einen bestimmten Wert hinzuzufügen. Geben Sie das Element an, das Sie dem ersten Argument hinzufügen möchten.

Anstatt eine Kopie der Liste mit dem als Rückgabewert hinzugefügten Element zurückzugeben, wird die Liste selbst, die die Methode ausgeführt hat, aktualisiert (beachten Sie, dass die Beschreibung für den Rückgabewert nicht festgelegt ist).

Dies liegt daran, dass sich die Verarbeitungslast erhöht, wenn Sie jedes Mal, wenn Sie ein Element hinzufügen, eine Kopie der Liste erstellen, wenn die Liste groß ist. Sie erstellen also keine Kopie wie diese.

list_value = ['Katze', 'Hund']
list_value.append('Hase')
print(list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

['Katze', 'Hund', 'Hase']

Element an einer bestimmten Position hinzufügen: Methode einfügen

Mit der Append-Methode wurde das Element am Ende der Liste hinzugefügt. Mit der Insert-Methode können Sie das Element jedoch an einer beliebigen Stelle in der Liste hinzufügen.

Geben Sie im ersten Argument den Index der Position an, die hinzugefügt werden soll, und geben Sie im zweiten Argument das Element an, das Sie hinzufügen möchten.

Der Index beginnt bei 0. Wenn Sie also am Anfang (zuerst) ein Element hinzufügen möchten, geben Sie 0 als erstes Argument an.

Beispiel zum Hinzufügen des Wortes Kaninchen zur Liste am Anfang (Index 0):

list_value = ['Katze', 'Hund']
list_value.insert(0, 'Hase')
print(list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

['Hase', 'Katze', 'Hund']

Beispiel zum Hinzufügen des Wortes Kaninchen zur Liste im zweiten (Index 1):

list_value = ['Katze', 'Hund']
list_value.insert(1, 'Hase')
print(list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

['Katze', 'Hase', 'Hund']

Wenn Sie versuchen, ein Element hinzuzufügen, das über den Bereich der Liste hinausgeht, wird es am Ende hinzugefügt. Wenn Sie beispielsweise versuchen, ein Element an die 4. (Index 3) oder 5. (Index 4) Position für eine Liste mit nur 2 Elementen hinzuzufügen, ist das Element nicht an der 3. Position vorhanden, also an der 3. Position Die Addition erfolgt zu (Index 2).

list_value = ['Katze', 'Hund']
list_value.insert(3, 'Hase')
print(list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

['Katze', 'Hund', 'Hase']

Fügen Sie den Inhalt einer anderen Liste zur Liste hinzu: Extend-Methode

Verwenden Sie die Extend-Methode, wenn Sie zwei Listen zu einer kombinieren möchten. verlängern ist ein Wort, das "verlängern" bedeutet. Ist es so etwas wie das Hinzufügen des Werts einer anderen Liste zu einer Liste, um sie zu erweitern (zu vergrößern)?

Führen Sie die Methode mit der Liste aus, die Sie hinzufügen möchten, und geben Sie die Liste mit den Werten an, die Sie als erstes Argument hinzufügen möchten.

Der Mehrwert wird nach dem Wert in der Liste hinzugefügt, zu der er hinzugefügt wird.

left_list = ['Katze', 'Hund']
right_list = ['Wolf', 'Hase']

left_list.extend(right_list)
print(left_list)

Ausgabeinhalt des Ergebnisses der Codeausführung:

['Katze', 'Hund', 'Wolf', 'Hase']

Sie können problemlos andere Beispiele als die Liste als Argumente angeben.

left_list = ['Katze', 'Hund']
right_tuple = ('Wolf', 'Hase')

left_list.extend(right_tuple)
print(left_list)

Ausgabeinhalt des Ergebnisses der Codeausführung:

['Katze', 'Hund', 'Wolf', 'Hase']

Elemente aus der Methode list: pop extrahieren

Die Pop-Methode ruft den Wert an einer bestimmten Indexposition in der Liste ab. Pop hat die Bedeutung von "Pop-out" und ist ein Bild eines bestimmten Elements in der Liste, das herausspringt.

Der Rückgabewert der Methode ist der Wert des Zielelements, und dieser Wert verschwindet nach der Ausführung aus der Liste.

Geben Sie im ersten Argument die Indexposition des Zielelements an. Wenn Sie 0 für den Index angeben, wird das erste Element abgerufen, und wenn Sie 1 für den Index angeben, wird das zweite Element abgerufen.

In der folgenden Stichprobe wird der Wert des zweiten (Index 1) "Hundes" aus der Liste entfernt, in der die drei Werte der Buchstaben "Katze", "Hund" und "Kaninchen" gespeichert sind.

Beachten Sie, dass der abgerufene Wert "Hund" ist und dass die nachfolgende Liste den Wert "Hund" nicht enthält.

list_value = ['Katze', 'Hund', 'Hase']
popped_value = list_value.pop(1)
print('popped_value:', popped_value)
print('list_value:', list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

popped_value:Hund
list_value: ['Katze', 'Hase']

Entfernen Sie das Zielelement aus der Liste: Methode entfernen

Die Methode remove entfernt das Element mit einem bestimmten Wert in der Liste. Wie bei Pop wird der Inhalt der Liste reduziert, aber im Gegensatz zu Pop wird er durch Angabe eines Werts anstelle eines Index gelöscht. Wenn Sie beispielsweise den Wert "Hund" aus der Liste entfernen möchten, geben Sie "Hund" als erstes Argument an.

list_value = ['Katze', 'Hund', 'Hase']
list_value.remove('Hund')
print(list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

['Katze', 'Hase']

Wenn die Liste den Wert des zum Löschen angegebenen Arguments enthält, wird der erste Wert gelöscht.

Im folgenden Beispiel wird die Methode remove mit dem Wert "dog" in der Liste ausgeführt. Sie können sehen, dass der zweite Wert, "Hund", in der Ergebnisliste verbleibt.

list_value = ['Katze', 'Hund', 'Hase', 'Hund']
list_value.remove('Hund')
print(list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

['Katze', 'Hase', 'Hund']

Verwenden Sie das Schlüsselwort del, um ein Element in der Liste zu entfernen

Sie können ein bestimmtes Element in der Liste mit der Methode remove oder pop entfernen, aber Sie können es auch entfernen, indem Sie "del target list [zu löschender Index]" schreiben.

Wenn Sie beispielsweise den zweiten Wert (Index 1) einer Variablen in der Liste list_value löschen möchten, schreiben Sie del list_value [1].

Diese Methode eignet sich, wenn es nicht erforderlich ist, den Wert wie pop abzurufen (der abgerufene Wert wird anschließend nicht verwendet) und Sie den Index anstelle des Werts angeben und löschen möchten.

list_value = ['Katze', 'Hund', 'Hase']
del list_value[1]
print(list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

['Katze', 'Hase']

Leere Liste: Methode löschen

Sie können die Liste mit der Löschmethode leeren.

Wenn Sie versuchen, die Löschmethode in der Liste auszuführen, in der die drei Werte wie unten gezeigt gespeichert sind, können Sie feststellen, dass der Inhalt der Liste leer ist ([]).

list_value = ['Katze', 'Hund', 'Hase']
list_value.clear()
print(list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

[]

Wenn Sie die Variable nur zu einer leeren Liste machen möchten, können Sie dies tun, indem Sie wie unten gezeigt eine neue leere Liste für die Variable festlegen.

list_value = ['Katze', 'Hund', 'Hase']
list_value = []
print(list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

[]

Welches sollte ich also verwenden? In dieser Hinsicht unterscheiden sich die Details im strengen Vergleich, aber es spielt keine Rolle, welche Sie zuerst verwenden.

Ich werde die Unterschiede unten beschreiben, aber es spielt keine Rolle, ob Sie diese Erklärung zuerst überspringen oder lesen und in die Ecke Ihres Kopfes legen.

Vergleichen wir zur Erklärung einen Behälter, der als Liste bezeichnet wird, mit einem Pappbehälter.

Die Clear-Methode verhält sich wie das Erstellen eines leeren Kartons, indem der gesamte Inhalt herausgenommen wird, während derselbe Karton verwendet wird.

Andererseits ist die Entsprechung, eine leere Liste als Variable festzulegen, ein Steuerelement wie das Vorbereiten eines anderen leeren Kartons (dh es werden zwei Kartons verwendet).

In einigen Fällen macht der Code auch einen Unterschied. Wir haben zwei Funktionen vorbereitet, die Listen als Argumente akzeptieren (clear_list und assign_blank_list), wie unten gezeigt, und die klaren und leeren Listen in den Variablen in den Funktionen widerspiegeln.

Wie oben erwähnt, verwendet die Methode clear (Funktion clear_list) denselben Karton, um den Inhalt zu leeren, sodass die Liste (list_value_1) nach Ausführung der Funktion leer ist.

Wenn Sie dagegen eine andere leere Liste als Variable in der Funktion festlegen (assign_blank_list), wird ein zweiter Karton als lokale Variable in der Funktion zugewiesen. Daher sind die Variablen außerhalb der Funktion (list_value_2 als erster Karton) und die Variablen in der Liste innerhalb der Funktion (list_value als zweiter Karton) ** unterschiedliche Werte **.

Der Ausgabeinhalt nach Ausführung der Funktion list_value_2 ist ebenfalls nicht leer und der ursprüngliche Wert bleibt erhalten.

def clear_list(list_value):
    list_value.clear()


def assign_blank_list(list_value):
    list_value = []


list_value_1 = ['Katze', 'Hund', 'Hase']
clear_list(list_value=list_value_1)
print('list_value_1:', list_value_1)

list_value_2 = ['Katze', 'Hund', 'Hase']
assign_blank_list(list_value=list_value_2)
print('list_value_2:', list_value_2)

Ausgabeinhalt des Ergebnisses der Codeausführung:

list_value_1: []
list_value_2: ['Katze', 'Hund', 'Hase']

Genau genommen ist das Verhalten für jeden etwas anders. In den meisten Fällen gibt es jedoch keine Probleme mit beiden Leistungen, einschließlich der Leistung, sodass Sie sich dessen zunächst nicht bewusst sein müssen.

Kopierliste: Kopiermethode

Verwenden Sie die Kopiermethode, um die gesamte Liste zu kopieren. Durch Aufrufen dieser Methode wird eine neue Liste von Rückgabewerten festgelegt.

Im folgenden Code können Sie sehen, dass derselbe Inhalt wie die Kopierquellenliste in der kopierten Liste ausgegeben wird.

list_value = ['Katze', 'Hund']
copied_list_value = list_value.copy()
print(copied_list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

['Katze', 'Hund']

Wenn Sie nur den Inhalt derselben Liste in einer anderen Variablen festlegen möchten, können Sie dies tun, indem Sie das gleiche Symbol wie unten gezeigt angeben (das Ausgabeergebnis ist das gleiche wie zuvor).

list_value = ['Katze', 'Hund']
copied_list_value = list_value
print(copied_list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

['Katze', 'Hund']

Obwohl es dem im Abschnitt "Klare Methode" beschriebenen ähnlich ist, verhält es sich auch anders.

Wenn Sie den Container der Liste mit einem Karton vergleichen, wie im Fall der Löschmethode, verhält sich die Kopiermethode so, als würde der Karton zusammen mit dem Inhalt des Kartons kopiert.

Wenn Sie dagegen den Wert der Liste mit dem Gleichheitszeichen auf eine andere Variable setzen, wird gesagt, dass nur ein Karton dieselbe verwendet und ** anders nennt ** (benennt mehrere Variablen). Es wird das Verhalten sein.

Dieses Verhalten macht einen spürbaren Unterschied zur klaren Methode (normalerweise müssen Sie sich dessen bewusst sein, wenn Sie Code schreiben).

Lassen Sie uns den Unterschied im Code überprüfen.

Der erste ist derjenige, der die Kopiermethode verwendet. Da hierbei der gesamte Inhalt des Kartons kopiert wird, ändert sich der Inhalt der Liste vor dem Kopieren nicht, auch wenn der Inhalt der Liste nach dem Kopieren aktualisiert wird, da der Karton selbst unterschiedlich ist. Nur die kopierte Liste wird aktualisiert.

list_value = ['Katze', 'Hund']
copied_list_value = list_value.copy()
copied_list_value[0] = 'Hase'

print('Ursprüngliche Liste:', list_value)
print('Liste nach dem Kopieren:', copied_list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

Ursprüngliche Liste: ['Katze', 'Hund']
Liste nach dem Kopieren: ['Hase', 'Hund']

Wenn Sie dagegen das gleiche Symbol verwenden und die Beschreibung der Kopiermethode weglassen und eine Liste verschiedener Variablennamen zuweisen, wird auf dasselbe Feld nur durch den Unterschied im Namen (Name) verwiesen, also nach dem Kopieren Wenn Sie den Wert der Variablen in der Liste von aktualisieren, wird gleichzeitig der Wert der Liste vor dem Kopieren geändert.

list_value = ['Katze', 'Hund']
copied_list_value = list_value
copied_list_value[0] = 'Hase'

print('Ursprüngliche Liste:', list_value)
print('Liste nach dem Kopieren:', copied_list_value)

Ausgabeinhalt des Ergebnisses der Codeausführung:

Ursprüngliche Liste: ['Hase', 'Hund']
Liste nach dem Kopieren: ['Hase', 'Hund']

Jede dieser Kopiermethoden wird als flache Kopie bzw. tiefe Kopie bezeichnet.

Eine flache Kopie entspricht derjenigen, die nur den Namen ändert (Fall, in dem die Kopiermethode nicht durchlaufen wird). Shallow kopiert den Inhalt der Box nicht, da dies "flach" bedeutet.

Andererseits entspricht Deep Copy der Methode des Kopierens über die Kopiermethode usw. und verhält sich wie das Kopieren des Inhalts der Box als die Bedeutung von "Deep" in Deep.

Dieser Unterschied zwischen flacher und tiefer Kopie kann beim Schreiben eines Programms versehentlich verwechselt werden. Beispielsweise gelten Fälle wie "Der ursprüngliche Wert sollte aktualisiert, aber nicht aktualisiert werden" und umgekehrt "Der ursprüngliche Wert wurde zu einem unerwarteten Zeitpunkt geändert". ..

Warum sind sie nicht alle tiefe Kopien? Ist es nicht verwirrend? Es ist jedoch sicherlich verwirrend und führt tendenziell zu Fehlern. Wenn jedoch jedes Mal eine tiefe Kopie ausgeführt wird, stellt dies eine große Belastung für den Personal Computer usw. dar, abhängig von der Größe des Inhalts wie der Liste.

In einer Liste können beispielsweise Millionen oder Dutzende Millionen Werte gespeichert werden. Dies kann sehr lästig sein, wenn häufig tiefe Kopien ausgeführt werden. Daher wird es normalerweise als flache Kopie behandelt, und nur wenn eine tiefe Kopie erforderlich ist, wird die Kopiermethode usw. explizit aufgerufen, um eine tiefe Kopie zu erstellen.

Ich verstehe flache und tiefe Kopien als Konzept, und selbst wenn ich lange weiter programmiere, mache ich selten Fehler. Seien Sie also vorsichtig.

Überprüfen Sie die Anzahl der Vorkommen eines Elements in der Methode list: count

Die Zählmethode berechnet die Anzahl der in der Liste enthaltenen spezifischen Werte. Geben Sie den Zielwert im ersten Argument an.

Wenn Sie beispielsweise "cat" als erstes Argument angeben, wird die Anzahl der Werte "cat" in der Liste zurückgegeben.

list_value = ['Katze', 'Hund', 'Katze', 'Katze', 'Hund']
print(list_value.count('Katze'))

Ausgabeinhalt des Ergebnisses der Codeausführung:

3

Finden Sie heraus, an welchem Index sich das Zielelement befindet: Indexmethode

Verwenden Sie die Indexmethode, um herauszufinden, an welchem Index sich ein bestimmtes Element in der Liste befindet.

Geben Sie im ersten Argument das Element an, nach dem Sie suchen möchten. Der Ergebnisindex wird im Rückgabewert festgelegt.

Der Indexwert beginnt wie jeder andere bei 0, daher wird er für den ersten Index auf 0, für den zweiten auf 1 Index, für den dritten auf 2 Index usw. gesetzt.

list_value = ['Hund', 'Hase', 'Katze', 'Hund']
print('Index mit dem Wert von cat:', list_value.index('Katze'))

Ausgabeinhalt des Ergebnisses der Codeausführung:

Index mit dem Wert von cat: 2

Wenn mehrere Zielwerte vorhanden sind, wird der erste Index zurückgegeben.

list_value = ['Hund', 'Hase', 'Katze', 'Hund', 'Katze']
print('Index mit dem Wert von cat:', list_value.index('Katze'))

Ausgabeinhalt des Ergebnisses der Codeausführung:

Index mit dem Wert von cat: 2

Ein Fehler tritt auf, wenn ein Wert, der nicht in der Liste enthalten ist, als Argument angegeben wird.

ValueError: 'Katze' is not in list

Ich erhalte eine Fehlermeldung wie "Der Wert 'cat'ist nicht in der Liste".

Referenzseite / Literaturübersicht

Recommended Posts

Zusammenfassung der integrierten Methoden usw. der Python-Liste
Zusammenfassung der Python3-Listenoperationen
So erhalten Sie eine Liste der integrierten Ausnahmen für Python
Zusammenfassung verschiedener for-Anweisungen in Python
Zusammenfassung der Verwendung der Python-Liste
Liste der Python-Module
Filterliste in Python
Die findähnliche Sache der Liste in Python
Zusammenfassung der Python-Argumente
[Python] Sortieren Sie die Liste von pathlib.Path in natürlicher Reihenfolge
Zusammenfassung zum Importieren von Dateien in Python 3
Liste häufig verwendeter integrierter Funktionen und Methoden
Kopieren Sie die Liste in Python
Zusammenfassung der Verwendung von MNIST mit Python
Zusammenfassung der Excel-Operationen mit OpenPyXL in Python
Zusammenfassung der Tools, die zum Analysieren von Daten in Python benötigt werden
Zusammenfassung der Python-Dateivorgänge
Was ist neu in Python 3.10 (Zusammenfassung)
String-Objektmethoden in Python
Zusammenfassung der Python-Sortierung (Liste, Wörterbuchtyp, Serie, DataFrame)
[Python] Ruft die Liste der im Modul definierten Klassen ab
[Python] Manipulation von Elementen in der Liste (Array) [Hinzufügen / Löschen]
Liste der Knoten in Diagrammen
Objektäquivalenzbeurteilung in Python
Zusammenfassung der beim Extrahieren von Daten verwendeten Pandas-Methoden [Python]
Liste des Python-Codes, der bei der Big-Data-Analyse verwendet wird
In der Liste verfügbare Methoden
Python: Ruft eine Liste der Methoden für ein Objekt ab
Zusammenfassung der Gesichtserkennung in Python
Gruppieren Sie nach aufeinanderfolgenden Elementen einer Liste in Python
Rufen Sie Methoden in Python dynamisch auf
Implementierung der schnellen Sortierung in Python
Was ist neu in Python 3.9 (Zusammenfassung)
Abrufen von Listenelementen in Python
Zusammenfassung der Datumsverarbeitung in Python (Datum / Uhrzeit und Datum)
Zusammenfassung der statistischen Datenanalysemethoden mit Python, die im Geschäftsleben verwendet werden können
[Einführung in Python] Zusammenfassung der Funktionen und Methoden, die häufig in Python vorkommen [Problemformat]
Grundlegende Zusammenfassung der Datenoperationen in Python Pandas - Zweite Hälfte: Datenaggregation
[Für Anfänger] Zusammenfassung der Standardeingabe in Python (mit Erklärung)
Holen Sie sich die Anzahl der spezifischen Elemente in der Python-Liste
Ich habe verschiedene Methoden der Kommunikation zwischen Prozessen bei der Mehrfachverarbeitung von Python3 gemessen
Entschlüsseln Sie eine Codezeile in Python Lambda, Karte, Liste
Ruft den Index des n-ten größten / kleinsten Werts in der Liste in Python ab
[Python] Liste der wichtigsten destruktiven Methoden für Listenoperationen (Hinzufügen / Löschen / Sortieren)
Ruft den Index des n-ten größten / kleinsten Werts in der Liste in Python ab
Extrahieren Sie mehrere Listenduplikate in Python
Bildpixel-Manipulation in Python
Unterschied zwischen list () und [] in Python
[Python] Verwalten Sie Funktionen in einer Liste
Ausgabe 2017 Premium Friday List in Python
Eine kurze Zusammenfassung der Python-Sammlung
MySQL-automatische Escape-Funktion von Parametern in Python
Umgang mit JSON-Dateien in Python
Implementierung eines Lebensspiels in Python
Audio-Wellenform-Anzeige in Python
Zusammenfassung verschiedener Operationen in Tensorflow
Definieren Sie Funktionen (Methoden) in Python dynamisch
Das Gesetz der Zahlen in Python
Implementierung der ursprünglichen Sortierung in Python
Reversibles Verwürfeln von Ganzzahlen in Python
Löschen Sie mehrere Elemente in der Python-Liste