Anleitung

Auf dieser Seite kannst du kleine Python-Programme direkt im Browser ausführen. Die Seite wurde sehr datensparsam entwickelt und lässt sich auch direkt in andere Webseiten einbetten. Über die Webseiten­adresse lassen sich alle eingegebenen Programme sofort teilen, dabei wird der Quelltext ausschließlich über den Link weitergegeben und bleibt damit vertraulich.

Anleitungen

  • Programme vorbereiten – Vorbereitung einklappen, mehrere Ausgangslagen, Titel und Aufgabe
  • Teilen und Einbetten – der Link, der Schnipsel für fremde Seiten, die Beamer-Ansicht
  • Drucken – ein Blatt mit Aufgabe, Programm und Ergebnis
  • Fehler finden – Zeile für Zeile durchgehen, Haltepunkte, Variablen
  • Kara – die Welt, die Befehle und ein Editor zum Zusammenklicken von Welten
  • Turtle – die Schildkröte, die zeichnet

Spiele mit Bildern und Klängen

Spiele schreibst du mit Pygame Zero (import pgzrun … pgzrun.go()). Dafür gibt es eine Bibliothek mit rund 600 Bildern und 14 Klängen in einem einheitlichen, flachen Stil. Hochladen musst du nichts: Jedes Spiel findet die Bilder über ihren Namen. Alle Bilder mit Suche, Vorschau und fertigem Code zeigt die Bildergalerie.

Alle Befehle für Turtle, Kara, Spiele, Fenster, numpy, Diagramme, requests und Dateien mit kurzen Beispielen zum Ausprobieren stehen in der Befehlsreferenz.

Bilder

Ein Bild wird zur Spielfigur mit Actor("name"), ein Hintergrund oder eine Kachel wird mit screen.blit("name", (x, y)) gezeichnet; images.name geht auch. Geladen werden nur die Bilder, deren Name im Programm steht.

import pgzrun

WIDTH = 800
HEIGHT = 480

ente = Actor("ente", (400, 240))

def draw():
    screen.blit("pf_bg_day", (0, 0))
    ente.draw()

def on_mouse_down():
    sounds.platsch.play()

pgzrun.go()

Klänge

sounds.coin.play() spielt einen Klang ab, z. B. coin, jump, hit, laser, explosion, win, platsch. Der Ton startet erst nach dem ersten Klick oder Tastendruck (so wollen es die Browser).

Namen und Animationen

Die Namen folgen dem Muster <ding>_<aktion>_<n>: heroine_run_1 bis heroine_run_8 sind die acht Bilder der laufenden Heldin. Wer sie nacheinander zeigt, bekommt eine Animation. Steht der Anfang des Namens in einer Zeichenkette, werden alle passenden Bilder geladen:

LAUFEN = ["heroine_run_" + str(i) for i in range(1, 9)]
heldin = Actor(LAUFEN[0], (200, 300))
zeit = 0

def update():
    global zeit
    zeit = zeit + 1
    heldin.image = LAUFEN[zeit // 4 % 8]

Die Pakete erkennt man am Anfang: pf_ Jump and Run (Kacheln pf_grass_mid, Münzen pf_coin_1 …), sp_ Weltraum, sea_ Meer, nat_ Natur, an_ Tiere, ui_ Spieloberfläche. Die Bilder aus dem Buch heißen deutsch: ente, kueken, boot. Im Expertenmodus gewinnt eine eigene Datei im Ordner images/ (z. B. images/ente.png) gegen das gleichnamige Bild der Bibliothek.

Spiele zum Weiterbauen

Unter den Beispielen auf der Startseite stehen vier fertige Spiele mit Bildern aus der Bibliothek:

  • Heldin hüpft: Jump’n’Run mit den Laufbildern heroine_run_*, Sprung- und Fallbild, Graskacheln und drehenden Münzen.
  • Weltraum-Abwehr: Raumschiff sp_ship, Laser, Gegner sp_enemy_* und eine Explosion aus sechs Bildern.
  • Ententeich: das Spiel aus dem Buch mit ente, kueken und boot.
  • Memory: 16 Karten mit memory_*, gespielt mit Maus oder Finger.