Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Python

Index de liste Python () avec exemple

Une liste est un conteneur qui stocke des éléments de différents types de données (entiers, flottants, booléens, chaînes, etc.) dans une séquence ordonnée. Il s'agit d'une structure de données importante intégrée à Python. Les données sont écrites entre crochets ([]) et les valeurs sont séparées par des virgules (,).

Les éléments à l'intérieur de la liste sont indexés avec le premier élément commençant à l'index 0. Vous pouvez apporter des modifications à la liste créée en ajoutant de nouveaux éléments ou en mettant à jour, en supprimant ceux qui existent déjà. Il peut également avoir des éléments en double et une liste imbriquée.

Il existe de nombreuses méthodes disponibles sur une liste, et la plus importante est index().

Dans ce didacticiel, vous apprendrez :

Index de la liste Python()

La méthode list index() vous aide à trouver le premier index le plus bas de l'élément donné. S'il y a des éléments en double dans la liste, le premier index de l'élément est renvoyé. C'est le moyen le plus simple et le plus simple d'obtenir l'index.

Outre la méthode index() de liste intégrée, vous pouvez également utiliser d'autres méthodes pour obtenir l'index, comme parcourir la liste en boucle, utiliser les compréhensions de liste, enumerate(), les méthodes de filtrage.

La méthode list index() renvoie le premier index le plus bas de l'élément donné.

Syntaxe

list.index(element, start, end)

Paramètres

Paramètres Description
élément L'élément dont vous souhaitez obtenir l'index.
démarrer Ce paramètre est facultatif. Vous pouvez définir le start:index pour rechercher l'élément. S'il n'est pas fourni, la valeur par défaut est 0.
fin Ce paramètre est facultatif. Vous pouvez spécifier l'index de fin de l'élément à rechercher. S'il n'est pas donné, il est considéré jusqu'à la fin de la liste.

Valeur de retour

La méthode list index() renvoie l'index de l'élément donné. Si l'élément n'est pas présent dans la liste, la méthode index() renverra une erreur, par exemple, ValueError :'Element' is not in the list.

Exemple :Pour trouver l'index de l'élément donné.

Dans la liste ma_liste =[‘A’, ‘B’, ‘C’, ‘D’, ‘E’, ‘F’] , on aimerait connaître l’index des éléments C et F.

L'exemple ci-dessous montre comment obtenir l'index.

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'))

Sortie :

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

Exemple :Utiliser début et fin dans index()

Dans cet exemple, nous essaierons de limiter la recherche d'index dans une liste en utilisant l'index de début et de fin.

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))

Sortie :

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

Exemple :pour tester la méthode index() avec un élément qui n'est pas présent.

Lorsque vous essayez de rechercher un index dans la liste pour un élément qui n'est pas présent, vous obtiendrez une erreur comme indiqué ci-dessous :

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

Sortie :

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

Utiliser la boucle for pour obtenir l'index d'un élément dans une liste

Avec la méthode list.index(), nous avons vu qu'elle donne l'index de l'élément passé en argument.

Considérons maintenant la liste comme suit :my_list =[‘Guru’, ‘Siya’, ‘Tiya’, ‘Guru’, ‘Daksh’, ‘Riya’, ‘Guru’] . Le nom "Guru" est présent 3 fois dans l'index, et je veux tous les index avec le nom "Guru".

En utilisant la boucle for, nous devrions être en mesure d'obtenir les index multiples, comme indiqué dans l'exemple ci-dessous.

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)

Sortie :

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

Utilisation de la boucle while et de list.index()

L'utilisation d'une boucle while parcourra la liste donnée pour obtenir tous les index de l'élément donné.

Dans la liste :my_list =['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'], nous avons besoin de tous les index de l'élément 'Guru'.

Ci-dessous, un exemple montre comment obtenir tous les index à l'aide de la boucle while

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)

Sortie :

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

Utiliser la compréhension de liste pour obtenir l'index d'un élément dans une liste

Pour obtenir tous les index, un moyen simple et rapide consiste à utiliser la compréhension de liste sur la liste.

Les compréhensions de liste sont des fonctions Python utilisées pour créer de nouvelles séquences (telles que des listes, des dictionnaires, etc.), c'est-à-dire en utilisant des séquences déjà créées.

Ils aident à réduire les boucles plus longues et facilitent la lecture et la maintenance de votre code.

L'exemple suivant montre comment procéder :

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)

Sortie :

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

Utiliser Enumerate pour obtenir l'index d'un élément dans une liste

La fonction Enumerate() est une fonction intégrée disponible avec python. Vous pouvez utiliser enumerate pour obtenir tous les index de l'élément dans une liste. Il prend l'entrée comme un objet itérable (c'est-à-dire un objet qui peut être mis en boucle) et la sortie est un objet avec un compteur pour chaque élément.

L'exemple suivant montre comment utiliser énumérer sur une liste pour obtenir tous les index d'un élément donné.

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'])

Sortie :

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

Utiliser un filtre pour obtenir l'index d'un élément dans une liste

La méthode filter() filtre la liste donnée en fonction de la fonction donnée. Chaque élément de la liste sera passé à la fonction, et les éléments requis seront filtrés en fonction de la condition donnée dans la fonction.

Utilisons la méthode filter() pour obtenir les index de l'élément donné dans la liste.

L'exemple suivant montre comment utiliser le filtre sur une liste.

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)

Sortie :

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

Utiliser NumPy pour obtenir l'index d'un élément dans une liste

La bibliothèque NumPy est spécialement utilisée pour les tableaux. Donc, ici, nous allons utiliser NumPy pour obtenir l'index de l'élément dont nous avons besoin dans la liste donnée.

Pour utiliser NumPy, nous devons l'installer et l'importer.

Voici les étapes à suivre :

Étape 1) Installer NumPy

pip install numpy

Étape 2) Importez le module NumPy.

import numpy as np

Étape 3) Utilisez np.array pour convertir la liste en tableau

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

Étape 4) Obtenez l'index de l'élément que vous voulez, en utilisant np.where()

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

Le code de travail final avec sortie est le suivant :

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)

Sortie :

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

Utiliser more_itertools.locate() pour obtenir l'index d'un élément dans une liste

Le more_itertools.locate() aide à trouver les index de l'élément dans la liste. Ce module fonctionnera avec la version python 3.5+. Le paquet more_itertools doit d'abord être installé pour pouvoir l'utiliser.

Voici les étapes pour installer et utiliser more_itertools

Étape 1) Installez more_itertools à l'aide de pip (gestionnaire de packages python). La commande est

pip install more_itertools

Étape 2) Une fois l'installation terminée, importez le locate module comme indiqué ci-dessous

from more_itertools import locate

Vous pouvez maintenant utiliser le module de localisation sur une liste comme indiqué ci-dessous dans l'exemple :

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'))) 

Sortie :

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

Résumé :


Python

  1. Python String strip() Fonction avec EXAMPLE
  2. Python String count() avec des EXEMPLES
  3. Fonction Python round() avec EXEMPLES
  4. Fonction Python map() avec EXEMPLES
  5. Python Timeit() avec des exemples
  6. Compteur Python dans les collections avec exemple
  7. Python List count() avec des EXEMPLES
  8. Python supprime les doublons d'une liste
  9. Supprimer un élément d'une LISTE Python [clear, pop, remove, del]