Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Python

Python List index() mit Beispiel

Eine Liste ist ein Container, der Elemente verschiedener Datentypen (Ints, Floats, Boolean, Strings usw.) in einer geordneten Reihenfolge speichert. Es ist eine wichtige Datenstruktur, die in Python eingebaut ist. Die Daten werden in eckige Klammern ([]) geschrieben und die Werte durch Komma (,) getrennt.

Die Elemente in der Liste werden mit dem ersten Element beginnend bei Index 0 indiziert. Sie können Änderungen an der erstellten Liste vornehmen, indem Sie neue Elemente hinzufügen oder vorhandene Elemente aktualisieren oder löschen. Es kann auch doppelte Elemente und eine verschachtelte Liste haben.

Auf einer Liste stehen viele Methoden zur Verfügung, und die wichtigste ist index().

In diesem Tutorial lernen Sie:

Python-Listenindex()

Die Methode list index() hilft Ihnen, den ersten niedrigsten Index des angegebenen Elements zu finden. Wenn in der Liste doppelte Elemente vorhanden sind, wird der erste Index des Elements zurückgegeben. Dies ist der einfachste und unkomplizierteste Weg, um den Index zu erhalten.

Neben der eingebauten list-index()-Methode können Sie auch andere Methoden verwenden, um den Index zu erhalten, wie z

Die Methode list index() gibt den ersten niedrigsten Index des angegebenen Elements zurück.

Syntax

list.index(element, start, end)

Parameter

Parameter Beschreibung
Element Das Element, für das Sie den Index erhalten möchten.
beginnen Dieser Parameter ist optional. Sie können den Startindex definieren, um nach dem Element zu suchen. Wenn nicht angegeben, ist der Standardwert 0.
Ende Dieser Parameter ist optional. Sie können den Endindex für das zu durchsuchende Element angeben. Wenn nicht angegeben, wird es bis zum Ende der Liste berücksichtigt.

Rückgabewert

Die Methode list index() gibt den Index des angegebenen Elements zurück. Wenn das Element nicht in der Liste vorhanden ist, gibt die Methode index() einen Fehler aus, z. B. ValueError:‘Element’ is not in the list.

Beispiel:Um den Index des angegebenen Elements zu finden.

In der Liste my_list =[‚A‘, ‚B‘, ‚C‘, ‚D‘, ‚E‘, ‚F‘] möchten wir den Index für Element C und F wissen.

Das folgende Beispiel zeigt, wie man den Index erhält.

my_list = ['A', 'B', 'C', 'D', 'E', 'F']
print("The index of element C is ", my_list.index('C'))
print("The index of element F is ", my_list.index('F'))

Ausgabe:

The index of element C is  2
The index of element F is  5

Beispiel:Verwendung von start und end in index()

In diesem Beispiel wird versucht, die Indexsuche in einer Liste mit Start- und Endindex einzuschränken.

my_list = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J']
print("The index of element C is ", my_list.index('C', 1, 5))
print("The index of element F is ", my_list.index('F', 3, 7))
#using just the startindex
print("The index of element D is ", my_list.index('D', 1))

Ausgabe:

The index of element C is  2
The index of element F is  5
The index of element D is  3

Beispiel:Um die Methode index() mit einem Element zu testen, das nicht vorhanden ist.

Wenn Sie versuchen, in der Liste nach einem nicht vorhandenen Element nach einem Index zu suchen, erhalten Sie eine Fehlermeldung wie unten gezeigt:

my_list = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J']
print("The index of element C is ", my_list.index('Z'))

Ausgabe:

Traceback (most recent call last):
File "display.py", line 3, in <module>
print("The index of element C is ", my_list.index('Z'))
ValueError: 'Z' is not in list

For-Schleife verwenden, um den Index eines Elements in einer Liste zu erhalten

Bei der Methode list.index() haben wir gesehen, dass sie den Index des Elements angibt, das als Argument übergeben wird.

Betrachten Sie nun die Liste als:my_list =[‚Guru‘, ‚Siya‘, ‚Tiya‘, ‚Guru‘, ‚Daksh‘, ‚Riya‘, ‚Guru‘] . Der Name „Guru“ ist dreimal im Index vorhanden, und ich möchte alle Indizes mit dem Namen „Guru“.

Mit der for-Schleife sollten wir in der Lage sein, die mehreren Indizes zu erhalten, wie im Beispiel unten gezeigt.

my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
all_indexes = [] 
for i in range(0, len(my_list)) : 
    if my_list[i] == 'Guru' : 
        all_indexes.append(i)
print("Originallist ", my_list)
print("Indexes for element Guru : ", all_indexes)

Ausgabe:

Originallist  ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
Indexes for element Guru :  [0, 3, 6]

Verwendung von While-Schleife und list.index()

Die Verwendung einer While-Schleife durchläuft die angegebene Liste, um alle Indizes des angegebenen Elements zu erhalten.

In der Liste:my_list =['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] brauchen wir alle Indizes des Elements 'Guru'.

Unten ist ein Beispiel, das zeigt, wie man alle Indizes mit der While-Schleife

erhält
my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
result = []
elementindex = -1
while True:
    try:
        elementindex = my_list.index('Guru', elementindex+1)
        result.append(elementindex)
    except  ValueError:
        break
print("OriginalList is ", my_list)
print("The index for element Guru is ", result)

Ausgabe:

OriginalList is  ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
The index for element Guru is  [0, 3, 6]

Listenverständnis verwenden, um den Index eines Elements in einer Liste zu erhalten

Um alle Indizes zu erhalten, besteht ein schneller und unkomplizierter Weg darin, das Listenverständnis für die Liste zu verwenden.

List Comprehensions sind Python-Funktionen, die zum Erstellen neuer Sequenzen (z. B. Listen, Wörterbücher usw.) verwendet werden, dh zum Verwenden bereits erstellter Sequenzen.

Sie tragen dazu bei, längere Schleifen zu reduzieren und Ihren Code leichter lesbar und wartungsfreundlicher zu machen.

Das folgende Beispiel zeigt, wie es geht:

my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
print("Originallist ", my_list)
all_indexes = [a for a in range(len(my_list)) if my_list[a] == 'Guru']
print("Indexes for element Guru : ", all_indexes)

Ausgabe:

Originallist  ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
Indexes for element Guru :  [0, 3, 6]

Enumerate verwenden, um den Index eines Elements in einer Liste zu erhalten

Die Enumerate()-Funktion ist eine integrierte Funktion, die mit Python verfügbar ist. Sie können Enumerate verwenden, um alle Indizes des Elements in einer Liste zu erhalten. Es nimmt die Eingabe als iterierbares Objekt an (d. h. ein Objekt, das in einer Schleife durchlaufen werden kann), und die Ausgabe ist ein Objekt mit einem Zähler für jedes Element.

Das folgende Beispiel zeigt, wie man Enumerate in einer Liste verwendet, um alle Indizes für ein bestimmtes Element zu erhalten.

my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
print("Originallist ", my_list)
print("Indexes for element Guru : ", [i for i, e in enumerate(my_list) if e == 'Guru'])

Ausgabe:

Originallist  ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
Indexes for element Guru :  [0, 3, 6]

Filter verwenden, um den Index eines Elements in einer Liste zu erhalten

Die Methode filter() filtert die angegebene Liste basierend auf der angegebenen Funktion. Jedes Element der Liste wird an die Funktion übergeben, und die erforderlichen Elemente werden basierend auf der in der Funktion angegebenen Bedingung gefiltert.

Lassen Sie uns die Methode filter() verwenden, um die Indizes für das angegebene Element in der Liste zu erhalten.

Das folgende Beispiel zeigt, wie man einen Filter für eine Liste verwendet.

my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
print("Originallist ", my_list)
all_indexes = list(filter(lambda i: my_list[i] == 'Guru', range(len(my_list)))) 
print("Indexes for element Guru : ", all_indexes)

Ausgabe:

Originallist  ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
Indexes for element Guru :  [0, 3, 6]

NumPy verwenden, um den Index eines Elements in einer Liste zu erhalten

Die NumPy-Bibliothek wird speziell für Arrays verwendet. Hier wird also NumPy verwendet, um den Index des Elements, das wir benötigen, aus der angegebenen Liste zu erhalten.

Um NumPy nutzen zu können, müssen wir es installieren und importieren.

Hier sind die Schritte dafür:

Schritt 1) Installieren Sie NumPy

pip install numpy

Schritt 2) Importieren Sie das NumPy-Modul.

import numpy as np

Schritt 3) Verwenden Sie np.array, um die Liste in ein Array umzuwandeln

my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
np_array = np.array(my_list)

Schritt 4) Holen Sie sich den Index des gewünschten Elements mit np.where()

item_index = np.where(np_array == 'Guru')[0]

Der endgültige Arbeitscode mit Ausgabe lautet wie folgt:

import numpy as np
my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
np_array = np.array(my_list)
item_index = np.where(np_array == 'Guru')[0]
print("Originallist ", my_list)
print("Indexes for element Guru :", item_index)

Ausgabe:

Originallist['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
Indexes for element Guru : [0 3 6]

Verwendung von more_itertools.locate(), um den Index eines Elements in einer Liste zu erhalten

more_itertools.locate() hilft, die Indizes des Elements in der Liste zu finden. Dieses Modul funktioniert mit Python Version 3.5+. Das Paket more_itertools muss erst installiert werden, um es nutzen zu können.

Im Folgenden sind die Schritte zum Installieren und Verwenden von more_itertools

aufgeführt

Schritt 1) Installieren Sie more_itertools mit pip (Python-Paketmanager). Der Befehl lautet

pip install more_itertools

Schritt 2) Sobald die Installation abgeschlossen ist, importieren Sie die locate Modul wie unten gezeigt

from more_itertools import locate

Jetzt können Sie das Suchmodul in einer Liste verwenden, wie im folgenden Beispiel gezeigt:

from more_itertools import locate
my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
print("Originallist : ", my_list)
print("Indexes for element Guru :", list(locate(my_list, lambda x: x == 'Guru'))) 

Ausgabe:

Originallist :  ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
Indexes for element Guru : [0, 3, 6]

Zusammenfassung:


Python

  1. std::list in C++ mit Beispiel
  2. Python String strip() Funktion mit BEISPIEL
  3. Python String count() mit BEISPIELE
  4. Python-Funktion round() mit BEISPIELE
  5. Python map() Funktion mit BEISPIELE
  6. Python Timeit() mit Beispielen
  7. Python-Zähler in Sammlungen mit Beispiel
  8. Python List count() mit BEISPIELE
  9. Python entfernt Duplikate aus einer Liste
  10. Element aus einer Python-LIST entfernen [clear, pop, remove, del]