Rauf und runter

Folgende Animation besteht aus 200 Bildern, die nacheinander abgespielt werden, wie ein Film.

steigend

Ein immer gleicher Ball liegt auf einer unsichtbaren 'wachsenden' Grafik, z. B. ein transparentes Rechteck oder eine Ellipse der Breite Null.

Hier sehen Sie fünf Zwischenschritte, wobei der Sockel (weiss) zu Debugging-Zwecken sichtbar ist:

Lösungsgrafiken
basic0basic0basic0basic0basic0

Dekomposition / Arbeitsschritte

  1. die (Farb-) Konstanten erstellen
  2. eine erste Funktion verfassen, die die Figur im momentanen Zustand zeichnet und diese als immer gleichgrosse Grafik zurückgibt, also eigentlich die einzelnen Frames eines Films
  3. eine zweite Funktion verfassen, die diese Figurpositionen (oder -konfigurationen) zu einer Liste von Grafiken vereint und zurückgibt
  4. mit dem Ausgabebefehl show_animation die Grafikliste als Film abspielen

1. Konstanten

Loading...

2. Einzelne Frames

Loading...

3. Filmfunktion

Erstellen Sie eine neue Filmfunktion, die 200 Bilder des (immer neu positionierten) Balls erstellt und diese in eine Liste von Grafiken einfügt. Diese Liste von Grafiken ist der Rückgabewert der Filmfunktion. So kann dann die Liste von Grafiken als Titelanimation abgespielt werden. Spicken Sie wenn nötig bei einer vorher besprochenen Animation.

Aufbau

  1. Filmfunktion, die eine Grösse entgegennimmt und eine Liste von Grafiken zurückgibt -> list[Graphic]
    1. Akkumulator als leere Liste erstellen, z. B. film oder frame_liste
    2. in einer for-Schleife die Liste mit den Grafiken der sich bewegenden Figur füllen
    3. die Grafikliste zurückgeben
  2. mit show_animation die Filmfunktion aufrufen und erhaltene Grafikliste als Film abspielen
Loading...

Toolbox

Listen verändern

Bereits gefüllte Listen kann man auf mehrere Arten verändern. Hier lernen Sie Slicing und konkatenieren kennen.

Listen umkehren

Sie kennen das Konzept [start: stop: step] nun schon von Strings und/oder der Funktion range(start, stop, step). Man kann das in Python auch auf Listen anwenden. Dann nennt man das Slicing.

Praktischerweise können Sie sich mit dem Slicen von Listen wieder ganz viel Arbeit ersparen, denn mit Slicing kann man z. B. die Filmfunktion aufrufen und die Ausgabe kurzerhand mit [::-1] umkehren. Führen Sie dazu folgende zwei Zellen aus:

Loading...
Loading...
Loading...

Listen konkatenieren

Listen können Sie auch mit + aneinanderhängen, Fachbegriff konkatenieren:

Loading...
Loading...

Zwei Filme konkatenieren

film_konkateniert

Tipp: Benutzen Sie wieder die Funktion, die einen Film von einem steigenden Ball erstellt, um einen Film von einem steigenden und fallenden Ball zu erstellen. Sie müssen nur 1-3 Zeilen Code schreiben.

Loading...

Toolbox

Was Sie geübt und gelernt haben

Allgemein

  • Sie können bestehende Programme sinnvoll abändern und erweitern.
  • Sie können Probleme lösen, indem Sie diese in Teilprobleme zerlegen.
  • Sie können Datentypen und -strukturen sinnvoll einsetzen.
  • Sie können Funktionen in Ihre eigene Bibliothek aufnehmen.

Python

  • Sie können Listen in Schleifen neue Elemente hinzufügen.
  • Sie können Funktionen in Schleifen mit verschieden Argumenten, z. B. height für die Funktion rectangle, aufrufen, um sich leicht ändernde Elemente zu erstellen.
  • Sie können Listen umkehren und konkatenieren.

PyTamaro

  • Sie können show_animation verwenden, um Listen von Grafiken als Animation auszugeben.

This activity has been created by Gall and is licensed under CC BY-SA 4.0.

Rauf und runter

Logo of PyTamaro

PyTamaro is a project created by the Lugano Computing Education Research Lab at the Software Institute of USI

Privacy PolicyPlatform Version 58b3e81 (Thu, 08 May 2025 17:31:39 GMT)