Forum Python

Please or S’enregistrer to create posts and topics.

Problème avec l'utilisation de pop() sur une liste python

Salut,
J'utilise pop() pour supprimer le dernier élément d'une liste. Cependant, lorsque la liste est vide, j'obtiens une erreur :
nums = [11]
nums.pop()
nums.pop()
Erreur : IndexError: pop from empty list
Comment éviter cela ?

Bonjour Bik,

La méthode pop() génère une erreur si vous tentez de retirer un élément d'une liste vide. Pour éviter ce problème, vous pouvez vérifier si la liste contient des éléments avant d'utiliser pop().

Voici une solution :

nums = []
if nums:  # Vérifie si la liste n'est pas vide
    nums.pop()
else:
    print("Impossible de supprimer un élément d'une liste vide.")

Une autre option est de capturer l'erreur avec un bloc try  except:

nums = []
try:
    nums.pop()
except IndexError:
    print("La liste est vide, aucun élément à supprimer.")