Читать книгу Routineaufgaben mit Python automatisieren - Al Sweigart - Страница 125
Elemente mit remove() aus Listen entfernen
ОглавлениеWenn Sie die Methode remove() für eine Liste aufrufen, übergeben Sie ihr den Wert, den Sie aus dieser Liste entfernen möchten. Probieren Sie das wie folgt in der interaktiven Shell aus:
>>> spam = ['cat', 'bat', 'rat', 'elephant']
>>> spam.remove('bat')
>>> spam
['cat', 'rat', 'elephant']
Wenn Sie versuchen, einen Wert aus einer Liste zu entfernen, der gar nicht vorhanden ist, erhalten Sie den Fehler ValueError:
>>> spam = ['cat', 'bat', 'rat', 'elephant']
>>> spam.remove('chicken')
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
spam.remove('chicken')
ValueError: list.remove(x): x not in list
Kommt der Wert mehrmals in der Liste vor, so wird nur das erste Vorkommen entfernt:
>>> spam = ['cat', 'bat', 'rat', 'cat', 'hat', 'cat']
>>> spam.remove('cat')
>>> spam
['bat', 'rat', 'cat', 'hat', 'cat']
Wenn Sie den Index des Elements kennen, das Sie aus einer Liste löschen wollen, können Sie die Anweisung del verwenden; kennen Sie dagegen den Wert des Elements, so nutzen Sie zum Entfernen remove().