Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Iterieren Über Indizes | Schleifen
Einführung in Python

bookIterieren Über Indizes

In der vorherigen Aufgabe hast du der Funktion range() eine bestimmte Anzahl von Elementen übergeben. Aber was ist, wenn du die Anzahl dynamisch bestimmen musst? Hier wird die Indexiteration unerlässlich.

Die Indexiteration ist eine zentrale Technik in Python, die es ermöglicht, Elemente anhand ihrer Position in Datenstrukturen wie Listen oder Arrays zuzugreifen und zu verändern. Sie ist besonders hilfreich für Aufgaben, die präzise Kontrolle über jedes Element erfordern, wie zum Beispiel das Aktualisieren von Lagerbeständen oder das Verwalten von Verkaufsdaten in einem Lebensmittelgeschäft.

Sieh zu, wie Alex demonstriert, wie das Iterieren über Indizes die Abläufe in unserem Lebensmittelgeschäft-Beispiel vereinfachen kann:

Das Iterieren über Indizes ist nützlich, wenn sowohl der Index als auch der Wert jedes Elements in einer Liste benötigt werden. Wenn range() mit len() verwendet wird, werden zwei Funktionen kombiniert, um eine Zahlenfolge zu erzeugen, die den Indizes der Listenelemente entspricht. Diese Methode ist besonders hilfreich in Schleifen, in denen Elemente positionsbasiert zugegriffen oder verändert werden müssen.

Zum Beispiel greift diese for-Schleife auf den Index und den Wert jedes Elements in der grocery_list zu:

12345678
# List of grocery items grocery_list = ["Apples", "Bananas", "Carrots", "Cucumbers"] # Initialize a for loop to iterate over indexes for item in range(len(grocery_list)): print("Index:", item) print("Item:", grocery_list[item]) print("----") # Printing a divider line for clarity
copy

Beispielanwendung

Um einen Rabatt auf eine Liste von Preisen anzuwenden, müssen die Elemente der Liste direkt verändert werden. Eine einfache Schleife wie for cost in prices: liefert lediglich eine Kopie jedes Elements, jedoch keinen Verweis auf das tatsächliche Element in der Liste. Änderungen auf diese Weise beeinflussen die Original-Liste nicht.

Um sicherzustellen, dass wir jedes Element direkt in der Liste prices aktualisieren, verwenden wir range(len(prices)), um über die Indizes zu iterieren. Dadurch kann auf jedes Element ein Rabattfaktor angewendet werden:

12345678910111213
# List of original prices of grocery items prices = [1.50, 2.00, 0.75, 3.25] # Discount factor (10% off each item) discount_factor = 0.10 # Iterate over the list of prices using range(len()) for cost in range(len(prices)): # Apply the discount by reducing the price prices[cost] -= prices[cost] * discount_factor print(f"New price of item {cost + 1}: ${prices[cost]}") print("Updated prices:", prices)
copy

Hinweis

  • Die Formel prices[cost] -= prices[cost] * discount_factor ist gleichbedeutend mit prices[cost] = prices[cost] - prices[cost] * discount_factor. Dadurch wird ein Anteil des ursprünglichen Preises (bestimmt durch den Rabatt) vom Preis abgezogen und der Rabatt somit angewendet;

  • Das cost + 1 in der print-Anweisung passt den Index so an, dass er bei 1 statt bei 0 beginnt, was benutzerfreundlicher ist.

Mit dieser Methode wird sichergestellt, dass die Original-Liste prices direkt mit den neuen, rabattierten Preisen aktualisiert wird, sodass die Änderungen sofort im gesamten Programm sichtbar sind, wo immer die Liste prices verwendet wird.

Aufgabe

Swipe to start coding

Rabatt nach Position

Anwenden von Rabattprozentsätzen auf Produktpreise basierend auf ihrer Position in der Liste durch Iteration über Indizes.

  1. Verwenden einer for-Schleife mit range() und len(), um durch die Indizes von prices zu iterieren.
  2. Anwenden von Rabatten basierend auf der Indexposition und Aktualisierung jedes Preises in der Liste prices: 10% für Index 0, 20% für Index 1, 15% für Index 2 und 5% für Index 3.
  3. Ausgeben von Updated price for item {index}: ${updated_price:.2f} für jeden Artikel.

Hinweis

.2f formatiert eine Zahl auf 2 Dezimalstellen (z. B. 55.00). Verwendung: updated_price[index]:.2f.

Lösung

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 5. Kapitel 4
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Suggested prompts:

Can you explain why using `range(len(list))` is better for modifying list elements?

What happens if I use a regular `for item in list:` loop instead?

Can you show more examples of when index iteration is useful?

close

bookIterieren Über Indizes

Swipe um das Menü anzuzeigen

In der vorherigen Aufgabe hast du der Funktion range() eine bestimmte Anzahl von Elementen übergeben. Aber was ist, wenn du die Anzahl dynamisch bestimmen musst? Hier wird die Indexiteration unerlässlich.

Die Indexiteration ist eine zentrale Technik in Python, die es ermöglicht, Elemente anhand ihrer Position in Datenstrukturen wie Listen oder Arrays zuzugreifen und zu verändern. Sie ist besonders hilfreich für Aufgaben, die präzise Kontrolle über jedes Element erfordern, wie zum Beispiel das Aktualisieren von Lagerbeständen oder das Verwalten von Verkaufsdaten in einem Lebensmittelgeschäft.

Sieh zu, wie Alex demonstriert, wie das Iterieren über Indizes die Abläufe in unserem Lebensmittelgeschäft-Beispiel vereinfachen kann:

Das Iterieren über Indizes ist nützlich, wenn sowohl der Index als auch der Wert jedes Elements in einer Liste benötigt werden. Wenn range() mit len() verwendet wird, werden zwei Funktionen kombiniert, um eine Zahlenfolge zu erzeugen, die den Indizes der Listenelemente entspricht. Diese Methode ist besonders hilfreich in Schleifen, in denen Elemente positionsbasiert zugegriffen oder verändert werden müssen.

Zum Beispiel greift diese for-Schleife auf den Index und den Wert jedes Elements in der grocery_list zu:

12345678
# List of grocery items grocery_list = ["Apples", "Bananas", "Carrots", "Cucumbers"] # Initialize a for loop to iterate over indexes for item in range(len(grocery_list)): print("Index:", item) print("Item:", grocery_list[item]) print("----") # Printing a divider line for clarity
copy

Beispielanwendung

Um einen Rabatt auf eine Liste von Preisen anzuwenden, müssen die Elemente der Liste direkt verändert werden. Eine einfache Schleife wie for cost in prices: liefert lediglich eine Kopie jedes Elements, jedoch keinen Verweis auf das tatsächliche Element in der Liste. Änderungen auf diese Weise beeinflussen die Original-Liste nicht.

Um sicherzustellen, dass wir jedes Element direkt in der Liste prices aktualisieren, verwenden wir range(len(prices)), um über die Indizes zu iterieren. Dadurch kann auf jedes Element ein Rabattfaktor angewendet werden:

12345678910111213
# List of original prices of grocery items prices = [1.50, 2.00, 0.75, 3.25] # Discount factor (10% off each item) discount_factor = 0.10 # Iterate over the list of prices using range(len()) for cost in range(len(prices)): # Apply the discount by reducing the price prices[cost] -= prices[cost] * discount_factor print(f"New price of item {cost + 1}: ${prices[cost]}") print("Updated prices:", prices)
copy

Hinweis

  • Die Formel prices[cost] -= prices[cost] * discount_factor ist gleichbedeutend mit prices[cost] = prices[cost] - prices[cost] * discount_factor. Dadurch wird ein Anteil des ursprünglichen Preises (bestimmt durch den Rabatt) vom Preis abgezogen und der Rabatt somit angewendet;

  • Das cost + 1 in der print-Anweisung passt den Index so an, dass er bei 1 statt bei 0 beginnt, was benutzerfreundlicher ist.

Mit dieser Methode wird sichergestellt, dass die Original-Liste prices direkt mit den neuen, rabattierten Preisen aktualisiert wird, sodass die Änderungen sofort im gesamten Programm sichtbar sind, wo immer die Liste prices verwendet wird.

Aufgabe

Swipe to start coding

Rabatt nach Position

Anwenden von Rabattprozentsätzen auf Produktpreise basierend auf ihrer Position in der Liste durch Iteration über Indizes.

  1. Verwenden einer for-Schleife mit range() und len(), um durch die Indizes von prices zu iterieren.
  2. Anwenden von Rabatten basierend auf der Indexposition und Aktualisierung jedes Preises in der Liste prices: 10% für Index 0, 20% für Index 1, 15% für Index 2 und 5% für Index 3.
  3. Ausgeben von Updated price for item {index}: ${updated_price:.2f} für jeden Artikel.

Hinweis

.2f formatiert eine Zahl auf 2 Dezimalstellen (z. B. 55.00). Verwendung: updated_price[index]:.2f.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 5. Kapitel 4
single

single

some-alt