-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
6f841b8
commit fd32142
Showing
1 changed file
with
60 additions
and
2 deletions.
There are no files selected for viewing
62 changes: 60 additions & 2 deletions
62
content/material/Programmieren/Python-Cheatsheets/09-Listen.mdx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,62 @@ | ||
# 🚧 Listen 🚧 | ||
Diese Seite befindet sich im Aufbau. | ||
# Listen | ||
Mit Listen können wir "Sammlungen" von Werten anlegen. | ||
|
||
Im folgenden Beispiel verwenden wir Listen, um mit der Turtle in farbiges n-Eck zu zeichnen: | ||
```python showLineNumbers | ||
from turtle import * | ||
|
||
farben = ["red", "green", "blue", "orange", "purple"] | ||
|
||
for f in farben: | ||
pencolor(f) | ||
forward(100) | ||
left(360 / len(farben)) | ||
``` | ||
|
||
Auf Zeile `3` definieren wir eine Liste namens `farben`. Eine Liste beginnt und endet immer mit eckigen Klammern (`[]`) — die einzelnen Werte werden mit Kommas getrennt. Genau wie jeder andere Wert können wir eine Liste auch einer Variable zuweisen (hier eben der Variable `farben`). | ||
|
||
Auf Zeile `5` verwenden wir die Liste analog zur `range()`-Funktion. Diese Funktion erzeugt nämlich ebenfalls eine Liste: Beispielsweise erzeugt `range(5)` genau die Liste `[0, 1, 2, 3, 4]`. Die Laufvariable (in diesem Beispiel ist dies das `f` in `for f in ...`) enthält beim ersten Schleifendurchlauf das erste Element dieser Liste (`"red"`, beim zweiten Durchlauf das zweite (`"green"`), und so weiter. | ||
|
||
Mit der Funktion `len()` erhalten wir auf Zeile `8` die Länge der Liste (in diesem Fall `5`). | ||
|
||
## Auf ein Element zugreifen | ||
Um auf ein bestimmtes Element einer Liste zuzugreifen, verwenden wir ebenfalls eckige Klammern. Für die Liste `farben = ["red", "green", "blue", "orange", "purple"]` greifen wie folgt auf die einzelnen Elemente zu: | ||
- `farben[0]` gibt das **erste** Element zurück (`"red"`) | ||
- `farben[1]` gibt das **zweite** Element zurück (`"green"`) | ||
- `farben[-1]` gibt das **letzte** Element zurück (`"purple"`) und ist damit gleichbedeutend `farben[4]` | ||
|
||
## Heterogene Listen | ||
Nicht alle Elemente einer Liste müssen vom gleichen Datentyp sein. Beispielsweise ist folgende Liste ebenfalls zulässig in Python: | ||
|
||
```python | ||
["blue", 4, 3.14, "Hallo, Welt!", True] | ||
``` | ||
|
||
Die Verwendung von heterogenen Listen dieser Art ist allerdings nur in seltenen Fällen sinnvoll. | ||
|
||
## Listen verändern | ||
Die wichtigsten Funktionen zum Verändern von Listen sind `add()` und `remove()`. Folgendes Programm gibt am Ende die Liste `[10, 15, 20, 25]` aus: | ||
```python showLineNumbers | ||
werte = [10, 15, 15, 20] | ||
werte.append(25) | ||
werte.remove(15) | ||
print(werte) | ||
``` | ||
|
||
Auf Zeile `1` wird die Liste ganz normal definiert. | ||
|
||
Auf Zeile `2` wird mit `werte.append(25)` der Wert `25` an der hintersten Stelle in die Liste eingefügt. Die Liste hat danach den Wert `[10, 15, 15, 20]`. | ||
|
||
Auf Zeile `3` wird mit `werte.remove(15)` **ein** Element mit dem Wert `15` aus der Liste entfernt. Die Liste hat anschliessend den Wert `[10, 15, 20]`. Wenn die Liste den angegebenen Wert nicht enthält, dann führt dies zu einem Programmfehler. | ||
|
||
Wir können auch ein Element an einer bestimmten Stelle löschen: | ||
|
||
```python showLineNumbers {1} | ||
werte = [10, 15, 20, 25] | ||
del werte[2] | ||
print(werte) | ||
``` | ||
|
||
Dieses Programm gibt am Ende die Liste `[10, 15, 25]` aus, weil wir auf Zeile `2` das Element an der Position `2` (also das Element `20`) entfernen. | ||
|
||
--- |