Listen durchlaufen & Filtern (For-Schleifen)

Der Schimpfwort- & Meme-Filter

Fortschritt:
PHASE 1

Discovery & Checkpoint

Video & Einstieg
Verständnis-Check Beantworte die Frage zum Video

Gegeben ist folgender Code:

woerter = ["hallo", "du", "monster", "welt"]
treffer = 0

for w in woerter:
    if w == "monster":
        treffer += 1

print(treffer)

Was wird auf der Konsole ausgegeben?

PHASE 2

Parsons Puzzle

Struktur & Logik
Aufgabe Bringe die Bausteine per Drag & Drop in Reihenfolge

Bringe die Code-Blöcke in die richtige Reihenfolge und rücke sie korrekt ein,
um die Wörter einer Nachricht zu durchsuchen und verbotene Begriffe zu zählen.

Tipp: Benutze die Anfasser zum Verschieben und ⇥- / ⇥+ zum Einrücken.

Dein Programm (Lösung) Hier die Zeilen in die richtige Reihenfolge bringen
Aussortierte Bausteine (Distraktoren) Hierhin fehlerhafte / nicht benötigte Zeilen ziehen
PHASE 3

Scaffolding & Bugfix

Geführte Praxis
Aufgabe Finde und behebe die Fehler im Code

Der Filter soll eine neue Liste sauberer_chat aufbauen. Wenn ein Wort loser ist,
soll stattdessen !!! eingefügt werden, sonst das originale Wort.
Repariere die eingerückten Bedingungen und Ergänzungen in der Schleife!

Tipp: Passe den Code im Editor an und klicke auf „Ausführen & Prüfen“.

script.py
Python 3.11
Konsole (Output)

                    

Musterlösung:
nachricht = ["hey", "loser", "mach", "keinen", "loser"]
sauberer_chat = []

for wort in nachricht:
    if wort == "loser":
        sauberer_chat.append("!!!")
    else:
        sauberer_chat.append(wort)

print("Bereinigt:", sauberer_chat)
PHASE 4

Coding Challenge

Eigenständiges Coden
Ziel-Aufgabe Löse die Aufgabe und bestehe alle Tests

Schreibe einen automatischen Chat-Scanner:
1. Erstelle eine Liste woerter mit den Begriffen ["gg", "loser", "gl", "hf", "loser"].
2. Erstelle eine Zählvariable verstoesse mit dem Startwert 0.
3. Durchlaufe die Liste mit einer for-Schleife und prüfe jedes Wort:
- Wenn das Wort gleich 'loser' ist, erhöhe verstoesse um 1.
4. Gib am Ende Verstöße: <verstoesse> auf der Konsole aus.
5. Prüfe nach der Schleife mit einer Verzweigung:
- Falls verstoesse >= 4: Gib "Status: Bann ausgesprochen" aus.
- Andernfalls: Gib "Status: Verwarnung erteilt" aus.

Tipp: Schreibe deinen Code in den Editor und klicke auf „Code testen“.

solution.py
Python 3.11
Konsole (Output)

                    

Test-Suite

Musterlösung:
woerter = ["gg", "loser", "gl", "hf", "loser"]
verstoesse = 0

for wort in woerter:
    if wort == "loser":
        verstoesse += 1

print("Verstöße:", verstoesse)

if verstoesse >= 4:
    print("Status: Bann ausgesprochen")
else:
    print("Status: Verwarnung erteilt")
PHASE 5

Der Multi-Wort Meme- & Spam-Zensor

Kreatives Sandbox-Labor
Freies Experimentieren Erweitere deinen Code nach deinen eigenen Ideen

Erweitere deinen Filter so, dass er nicht nur ein einzelnes Schimpfwort filtert,
sondern eine ganze blacklist = ["loser", "spam", "ez"] abgleicht!
Tipp: Mit if wort in blacklist: kannst du prüfen, ob das aktuelle Wort in der Blockliste enthalten ist.

Tipp: Passe den Code an, führe ihn aus oder lade dein fertiges Programm als Python-Datei herunter.

programm.py
Python 3.11
Konsole (Output)

                    

Lektion vollständig abgeschlossen!

Du hast alle Phasen gemeistert und kannst hier im Sandbox-Labor frei weiterprogrammieren.

Zur Übersicht
Lektion beendet
>_

Benutzereingabe (input)

Dein Python-Programm wartet auf eine Eingabe

Tippe deine Eingabe ein und drücke Enter ↵ oder klicke auf Absenden.