PCEP-30-02 1.0 – Computerprogrammierung und Grundlagen von Python (18 %)
PCEP-30-02 1.1 - Grundlegende Begriffe und Definitionen verstehen
PCEP-30-02 1.2 – Logik und Struktur von Python verstehen
PCEP-30-02 1.3 – Literale und Variablen in Code einführen und verschiedene Zahlensysteme nutzen
PCEP-30-02 1.4 – Operatoren und Datentypen passend zum Problem wählen
PCEP-30-02 1.5 – Eingabe-/Ausgabe-Operationen in der Konsole durchführen
PCEP-30-02 2.0 – Kontrollfluss – Bedingte Blöcke und Schleifen (29%)
PCEP-30-02 2.1 – Entscheidungen treffen und den Programmfluss mit „if“ steuern
PCEP-30-02 3.0 – Datenkollektionen – Tupel, Dictionaries, Listen und Strings (25%)
PCEP-30-02 3.1 – Daten mit Listen sammeln und verarbeiten
PCEP-30-02 3.3 – Daten mit Dictionaries sammeln und verarbeiten
PCEP-30-02 3.4 – Mit Strings arbeiten
PCEP-30-02 4.0 – Funktionen und Ausnahmen (28%)
PCEP-30-02 4.3 – Python Built-In Exceptions Hierarchie
PCEP-30-02 4.4 – Grundlagen der Fehlerbehandlung in Python

Python: Namensverdeckung (Shadowing) in Funktionen

Beispiele für Namensverdeckung

1. Lokale Variable verdeckt eine globale Variable

pythonKopierenBearbeitenname = "Alice"  # Globale Variable

def gruessen():
    name = "Bob"  # Lokale Variable verdeckt die globale Variable
    print("Hallo,", name)

gruessen()
print("Global:", name)

Ausgabe:

makefileKopierenBearbeitenHallo, Bob
Global: Alice

➡️ Innerhalb der Funktion wird „Bob“ verwendet, weil die lokale Variable name die globale name verdeckt.


2. Namensverdeckung in geschachtelten Funktionen

pythonKopierenBearbeitendef außen():
    wert = 10  # Variable im äußeren Scope

    def innen():
        wert = 5  # Verdeckt die äußere Variable
        print("Innere Funktion:", wert)

    innen()
    print("Äußere Funktion:", wert)

außen()

Ausgabe:

yamlKopierenBearbeitenInnere Funktion: 5
Äußere Funktion: 10

➡️ Die innere wert-Variable verdeckt die äußere wert-Variable innerhalb innen().


3. Namensverdeckung mit Funktionsparametern

pythonKopierenBearbeitenzahl = 42  # Globale Variable

def verdoppeln(zahl):  # Parameter verdeckt die globale Variable
    return zahl * 2

print(verdoppeln(10))  # Ausgabe: 20
print("Global:", zahl)  # Ausgabe: 42

➡️ zahl in der Funktion ist kein Zugriff auf die globale Variable, sondern ein separater Funktionsparameter.