|
|
Zeile 15: |
Zeile 15: |
| * Bereich: range(start, stop+1) | | * Bereich: range(start, stop+1) |
| * Abstand: range(start, stop+1, abstand) | | * Abstand: range(start, stop+1, abstand) |
| + | * Micropyton erzeugt keine Liste mit range() sondern ersetzt die Liste durch die range-Funktion. |
| + | ** Das spart Speicherplatz. |
| | | |
| ==== Übung:==== | | ==== Übung:==== |
| * Gebt verschiedene Zahlenbereiche mit range() aus. | | * Gebt verschiedene Zahlenbereiche mit range() aus. |
| ** dazu ist eine for-Schleife mit print() erforderlich. | | ** dazu ist eine for-Schleife mit print() erforderlich. |
− | * Erstellt eine Liste mit den geraden Zahlen (range()) von 2 bis 20 | + | * Erstellt eine Liste mit den geraden Zahlen (range()) von 2 bis 20. |
| ** Gebt mit einer for-Schleife die Quadrate dieser Zahlen aus. | | ** Gebt mit einer for-Schleife die Quadrate dieser Zahlen aus. |
| | | |
Version vom 29. Juli 2023, 12:59 Uhr
Wiederholungen
In Programmen werden immer wieder Abschnitte des Programms mehrfach ausgeführt. Damit der Programmcode nur einmal geschrieben werden muss gibt es Schleifen die den Block mehrmals ausführen.
In Micro/Python gibt 2 solcher Strukturen:
for x in iterable:
- For in Python unterscheidet sich von anderen For-Schleifen
- ist dafür gedacht Werte aus einer Datenstruktur (Liste) zu bearbeiten.
- die Funktion einer C-typischen for-Schleife kann mit range() erreicht werden.
- Die Anzahl der Schleifen Durchläufe ist vorherbestimmt.
range()
- Python Funktion die ganze Zahlen liefert.
- Anzahl: range(anzahl) - Start = 0
- Bereich: range(start, stop+1)
- Abstand: range(start, stop+1, abstand)
- Micropyton erzeugt keine Liste mit range() sondern ersetzt die Liste durch die range-Funktion.
Übung:
- Gebt verschiedene Zahlenbereiche mit range() aus.
- dazu ist eine for-Schleife mit print() erforderlich.
- Erstellt eine Liste mit den geraden Zahlen (range()) von 2 bis 20.
- Gebt mit einer for-Schleife die Quadrate dieser Zahlen aus.
while True:
Übung:
Zahlenraten
urandom()
import urandom
x = urandom.randint(1,10)
print(x)