For-Schleifen
Willkommen im Abschnitt über Schleifen!
In diesem Kapitel erfahren Sie, wie Schleifen als zentrales Werkzeug zur Automatisierung wiederholender Aufgaben dienen und unerlässlich für die effiziente Verarbeitung von Listen und anderen iterierbaren Datentypen sind.
Begleiten Sie Alex, während er den Einsatz von for-Schleifen demonstriert, um Abläufe in unserem Lebensmittelgeschäft zu vereinfachen:
Die Verwendung von for-Schleifen in Python ermöglicht es, einen Codeblock wiederholt für jedes Element einer Sammlung (iterierbares Objekt) auszuführen. Folgendes ist über for-Schleifen zu wissen:
Syntax
Eine for-Schleife wird mit dem Schlüsselwort for eingeleitet, gefolgt von einem Variablennamen wie item, der jedes Element in der Sequenz repräsentiert. Danach folgt das Schlüsselwort in und anschließend das iterierbare Objekt, beispielsweise groceryItems. Der Codeblock innerhalb der Schleife wird für jedes Element einmal ausgeführt.
In diesem Beispiel fungiert item als Iteratorvariable, die nacheinander auf jedes Element der Liste groceryItems zugreift und für jedes Element die Funktion print() ausführt:
1234groceryItems = ["milk", "eggs", "cheese", "butter"] for item in groceryItems: # Code to be executed print(item)
Iteration bezeichnet den Prozess, einen Codeblock wiederholt auszuführen. Python unterstützt zwei Hauptarten der Iteration:
Bestimmte Iteration
Hierbei ist die Anzahl der Durchläufe im Voraus bekannt. for-Schleifen sind ein klassisches Beispiel und stoppen automatisch, wenn das Ende der Sequenz erreicht ist.
Unbestimmte Iteration
Hier läuft die Ausführung so lange, bis eine bestimmte Bedingung erfüllt ist, typischerweise gesteuert durch while-Schleifen, die im nächsten Kapitel ausführlich behandelt werden.
Anwendungsbeispiele
for-Schleifen in Python können mit jedem iterierbaren Objekt verwendet werden (lists, tuples, dictionaries, strings) und ermöglichen die Datenverarbeitung elementweise.
Ob der Zugriff auf Elemente einer Liste, Schlüssel oder Werte eines Dictionaries oder Zeichen in einem String erforderlich ist, bieten for-Schleifen eine klare Syntax, die den Code für wiederkehrende Aufgaben vereinfacht.
Hier wird gezeigt, wie eine for-Schleife verwendet werden kann, um über die Elemente eines Strings und eines Tupels zu iterieren, ähnlich wie zuvor bei Listen:
123456789# Print each letter in the string vegetable = "Carrot" for letter in vegetable: print(letter) # Tuple containing different categories of the grocery store categories = ("Produce", "Bakery", "Meat", "Dairy") for category in categories: print(category)
Bei der Verwendung einer for-Schleife mit einem Dictionary werden beim direkten Iterieren über das Dictionary standardmäßig die Schlüssel durchlaufen.
Folgendes ist zu erwarten, wenn direkt über ein Dictionary iteriert wird:
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary key print("Product list:") for product in productStock: print(product)
Beachten Sie, dass die Iteratorvariable product nur auf die Schlüssel des Dictionaries zugreift.
Um über die Werte eines Dictionaries zu iterieren, kann die Methode values() verwendet werden.
Dies ist nützlich für Operationen, bei denen auf die Werte zugegriffen werden muss, ohne die Schlüssel zu referenzieren:
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary value print("Stock counts:") for stock in productStock.values(): print(stock)
Wenn sowohl Schlüssel als auch Werte gleichzeitig benötigt werden, ermöglicht die Methode items() das Durchlaufen von Schlüssel-Wert-Paaren in einem Dictionary.
Um diese Methode in einer for-Schleife zu verwenden, werden zwei Variablen vor dem in-Schlüsselwort angegeben — eine für den Schlüssel (product) und eine für den Wert (stock):
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print both the key and value for each dictionary item print("Inventory details:") for product, stock in productStock.items(): print(f"{product} has {stock} units in stock.")
Hinweis
In diesem Beispiel verwenden wir f-Strings (auch als formatierte Zeichenfolgenliterale bekannt), um Variablen direkt in Zeichenfolgen einzubetten. Die Syntax ist einfach: Ein
fvor dem öffnenden Anführungszeichen"und Variablen oder Ausdrücke innerhalb von geschweiften Klammern{}in der Zeichenfolge. Diese Methode macht das Kombinieren von Zeichenfolgen und Variablen in Ausgaben deutlich lesbarer und ist daher sehr empfehlenswert.
Basierend auf dem Wissen zu if/else, booleschen Operatoren und for-Schleifen lässt sich eine einfache Inventurprüfung auf einem Dictionary durchführen:
123456789101112131415161718# Product names as keys and their stock levels as values inventory = { "milk": 120, "eggs": 30, "bread": 80, "apples": 10 } # The threshold stock level that triggers a restock minimum_stock = 50 # Evaluating stock levels and deciding if restocking is necessary print("Checking inventory status:") for product, quantity in inventory.items(): if quantity < minimum_stock: print(f"{product} requires restocking. Only {quantity} units remain.") else: print(f"{product} has adequate stock with {quantity} units available.")
Hinweis
Es fällt auf, dass sich
if-Anweisungen innerhalb derfor-Schleife befinden, was zu zusätzlicher Einrückung imif-Block führt. Wie zuvor erwähnt, kann jeder eingerückte Codeblock unabhängig behandelt werden, unabhängig davon, wo er platziert ist. Entscheidend ist, dass die Einrückung zwischen den Blöcken konsistent und korrekt ist.
Swipe to start coding
Summe der Produktpreise
Berechnung der Gesamtkosten von Produkten mithilfe einer for-Schleife zur Iteration durch eine Liste von Preisen.
- Erstellen einer Variablen
totalund Initialisierung mit0. - Verwendung einer for-Schleife zur Iteration durch jeden
pricein der Listeprices. - Addition jedes einzelnen
pricezur Variablentotalinnerhalb der Schleife. - Ausgabe des endgültigen
totalnach Abschluss der Schleife.
Lösung
Danke für Ihr Feedback!
single
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Awesome!
Completion rate improved to 2.17
For-Schleifen
Swipe um das Menü anzuzeigen
Willkommen im Abschnitt über Schleifen!
In diesem Kapitel erfahren Sie, wie Schleifen als zentrales Werkzeug zur Automatisierung wiederholender Aufgaben dienen und unerlässlich für die effiziente Verarbeitung von Listen und anderen iterierbaren Datentypen sind.
Begleiten Sie Alex, während er den Einsatz von for-Schleifen demonstriert, um Abläufe in unserem Lebensmittelgeschäft zu vereinfachen:
Die Verwendung von for-Schleifen in Python ermöglicht es, einen Codeblock wiederholt für jedes Element einer Sammlung (iterierbares Objekt) auszuführen. Folgendes ist über for-Schleifen zu wissen:
Syntax
Eine for-Schleife wird mit dem Schlüsselwort for eingeleitet, gefolgt von einem Variablennamen wie item, der jedes Element in der Sequenz repräsentiert. Danach folgt das Schlüsselwort in und anschließend das iterierbare Objekt, beispielsweise groceryItems. Der Codeblock innerhalb der Schleife wird für jedes Element einmal ausgeführt.
In diesem Beispiel fungiert item als Iteratorvariable, die nacheinander auf jedes Element der Liste groceryItems zugreift und für jedes Element die Funktion print() ausführt:
1234groceryItems = ["milk", "eggs", "cheese", "butter"] for item in groceryItems: # Code to be executed print(item)
Iteration bezeichnet den Prozess, einen Codeblock wiederholt auszuführen. Python unterstützt zwei Hauptarten der Iteration:
Bestimmte Iteration
Hierbei ist die Anzahl der Durchläufe im Voraus bekannt. for-Schleifen sind ein klassisches Beispiel und stoppen automatisch, wenn das Ende der Sequenz erreicht ist.
Unbestimmte Iteration
Hier läuft die Ausführung so lange, bis eine bestimmte Bedingung erfüllt ist, typischerweise gesteuert durch while-Schleifen, die im nächsten Kapitel ausführlich behandelt werden.
Anwendungsbeispiele
for-Schleifen in Python können mit jedem iterierbaren Objekt verwendet werden (lists, tuples, dictionaries, strings) und ermöglichen die Datenverarbeitung elementweise.
Ob der Zugriff auf Elemente einer Liste, Schlüssel oder Werte eines Dictionaries oder Zeichen in einem String erforderlich ist, bieten for-Schleifen eine klare Syntax, die den Code für wiederkehrende Aufgaben vereinfacht.
Hier wird gezeigt, wie eine for-Schleife verwendet werden kann, um über die Elemente eines Strings und eines Tupels zu iterieren, ähnlich wie zuvor bei Listen:
123456789# Print each letter in the string vegetable = "Carrot" for letter in vegetable: print(letter) # Tuple containing different categories of the grocery store categories = ("Produce", "Bakery", "Meat", "Dairy") for category in categories: print(category)
Bei der Verwendung einer for-Schleife mit einem Dictionary werden beim direkten Iterieren über das Dictionary standardmäßig die Schlüssel durchlaufen.
Folgendes ist zu erwarten, wenn direkt über ein Dictionary iteriert wird:
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary key print("Product list:") for product in productStock: print(product)
Beachten Sie, dass die Iteratorvariable product nur auf die Schlüssel des Dictionaries zugreift.
Um über die Werte eines Dictionaries zu iterieren, kann die Methode values() verwendet werden.
Dies ist nützlich für Operationen, bei denen auf die Werte zugegriffen werden muss, ohne die Schlüssel zu referenzieren:
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary value print("Stock counts:") for stock in productStock.values(): print(stock)
Wenn sowohl Schlüssel als auch Werte gleichzeitig benötigt werden, ermöglicht die Methode items() das Durchlaufen von Schlüssel-Wert-Paaren in einem Dictionary.
Um diese Methode in einer for-Schleife zu verwenden, werden zwei Variablen vor dem in-Schlüsselwort angegeben — eine für den Schlüssel (product) und eine für den Wert (stock):
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print both the key and value for each dictionary item print("Inventory details:") for product, stock in productStock.items(): print(f"{product} has {stock} units in stock.")
Hinweis
In diesem Beispiel verwenden wir f-Strings (auch als formatierte Zeichenfolgenliterale bekannt), um Variablen direkt in Zeichenfolgen einzubetten. Die Syntax ist einfach: Ein
fvor dem öffnenden Anführungszeichen"und Variablen oder Ausdrücke innerhalb von geschweiften Klammern{}in der Zeichenfolge. Diese Methode macht das Kombinieren von Zeichenfolgen und Variablen in Ausgaben deutlich lesbarer und ist daher sehr empfehlenswert.
Basierend auf dem Wissen zu if/else, booleschen Operatoren und for-Schleifen lässt sich eine einfache Inventurprüfung auf einem Dictionary durchführen:
123456789101112131415161718# Product names as keys and their stock levels as values inventory = { "milk": 120, "eggs": 30, "bread": 80, "apples": 10 } # The threshold stock level that triggers a restock minimum_stock = 50 # Evaluating stock levels and deciding if restocking is necessary print("Checking inventory status:") for product, quantity in inventory.items(): if quantity < minimum_stock: print(f"{product} requires restocking. Only {quantity} units remain.") else: print(f"{product} has adequate stock with {quantity} units available.")
Hinweis
Es fällt auf, dass sich
if-Anweisungen innerhalb derfor-Schleife befinden, was zu zusätzlicher Einrückung imif-Block führt. Wie zuvor erwähnt, kann jeder eingerückte Codeblock unabhängig behandelt werden, unabhängig davon, wo er platziert ist. Entscheidend ist, dass die Einrückung zwischen den Blöcken konsistent und korrekt ist.
Swipe to start coding
Summe der Produktpreise
Berechnung der Gesamtkosten von Produkten mithilfe einer for-Schleife zur Iteration durch eine Liste von Preisen.
- Erstellen einer Variablen
totalund Initialisierung mit0. - Verwendung einer for-Schleife zur Iteration durch jeden
pricein der Listeprices. - Addition jedes einzelnen
pricezur Variablentotalinnerhalb der Schleife. - Ausgabe des endgültigen
totalnach Abschluss der Schleife.
Lösung
Danke für Ihr Feedback!
single