====== LU14a - Listen mit Python ====== //Siehe auch [[https://docs.python.org/3/tutorial/datastructures.html#|Python - 5. Data Structures]]// Eine Liste ist eine Datenstruktur in Python. Sie enthält mehrere Einträge, die mit einem Index identifiziert werden. ===== Verarbeitungen mit Listen ===== ==== Anlegen ==== Wir definieren eine Liste, indem wir die eckigen Klammern **''['' '']''** verwenden. Die Reihenfolge der Elemente bestimmt den Index, beginnend mit Index=0. Um die Übersicht zu vereinfachen, **können** wir jedes Element auf eine eigene Zeile schreiben. animals = [ 'Löwe', # index = 0 'Gepard', # index = 1 'Adler' # index = 2 ] print(animals) == Output == ['Löwe', 'Gepard', 'Adler'] ==== Elemente einfügen ==== Mit der Funktion **append** wird ein zusätzliches Element am Ende der Liste eingefügt. animals = ['Löwe', 'Gepard', 'Adler'] animals.append('Hecht') # index = 3 print(animals) == Output == ['Löwe', 'Gepard', 'Adler', 'Hecht'] Mit der Funktion **insert** können wir ein neues Element an einer bestimmten Stelle in die Liste einfügen. Der Index aller Elemente hinter dem neuen Element, wird um 1 erhöht. animals = ['Löwe', 'Gepard', 'Adler'] animals.insert(2, 'Eule') print(animals) == Output == ['Löwe', 'Gepard', 'Eule', 'Adler'] ==== Elemente ändern ==== Wir können den Wert eines Elements ändern, indem wir über den Index darauf zugreifen. animals = ['Löwe', 'Gepard', 'Adler'] animals[1] = 'Tiger' print(animals) == Output == ['Löwe', 'Tiger', 'Adler'] ==== Elemente löschen ==== Mit der Funktion **pop** können wir ein bestimmtes Element anhand des Index aus einer Liste löschen. Mit der Funktion **remove** können wir ein Element anhand seines Werts aus der Liste löschen. animals = ['Löwe', 'Gepard', 'Adler', 'Hecht', 'Python'] animals.pop(2) # removes element with index=2 animals.remove('Löwe') # removes element with value='Löwe' print(animals) == Output == ['Gepard', 'Hecht', 'Python'] ==== Einzelne Elemente lesen ==== Wir können einzelne Element anhand ihres Index lesen. animals = ['Löwe', 'Gepard', 'Adler'] print(animals[1]) == Output == Gepard Die Funktion **index** sucht die Position eines Elements mit einem bestimmten Wert. animals = ['Löwe', 'Gepard', 'Adler'] print(animals.index('Adler')) == Output == 2 **Vorsicht**: Falls kein Element mit dem gesuchten Wert existiert, wird eine ''ValueException'' ausgelöst. Diese Situation müssen wir mit ''try'' / ''except'' abfangen. animals = ['Löwe', 'Gepard', 'Adler'] try: print(animals.index('Wolpertinger')) except ValueError: print('Kein Wolpertinger in der Liste vorhanden') == Output == Kein Wolpertinger in der Liste vorhanden ==== Alle Elemente verarbeiten ==== Mit einem **for**-Loop können wir alle Elemente einer Liste verarbeiten. animals = ['Löwe', 'Gepard', 'Adler'] for animal in animals: print(animal) == Output == Löwe Gepard Adler Die Funktion **sort** sortiert die Liste aufsteigend anhand der Werte. Mit dem Argument ''reverse=True'' können wir die Liste absteigend sortieren. animals = ['Löwe', 'Gepard', 'Adler'] animals.sort() for animal in animals: print(animal) print('------') animals.sort(reverse=True) for animal in animals: print(animal) == Output == Adler Gepard Löwe ------ Löwe Gepard Adler ---- {{tag>M319-C1G M319-C1F M319-C1E}} [[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Marcel Suter