Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Range-Funktion | Schleifen
Einführung in Python

Swipe um das Menü anzuzeigen

book
Range-Funktion

Die range()-Funktion in Python ist eine eingebaute Funktion, die eine Sequenz von Zahlen erzeugt.

Sie wird oft zum Iterieren über eine Sequenz mit Schleifen verwendet, insbesondere wenn Sie eine Schleife eine bestimmte Anzahl von Malen ausführen müssen.

Dies ist ideal für Aufgaben, die ein vorhersehbares Wiederholungsmuster beinhalten, wie das Auffüllen von Regalen oder das Planen von Verkäufen in einem Supermarkt.

Schauen wir uns an, wie Alex die range()-Funktion nutzt, um Routineaufgaben in unserem Supermarktszenario effizient zu verwalten:

Syntax und Argumente

Die range()-Funktion kann bis zu drei Argumente annehmen, was sie für verschiedene Schleifenszenarien vielseitig macht.

Hier ist die allgemeine Syntax für die range-Funktion:

python
  • start : Dies ist die erste Zahl der Sequenz. Es ist optional , und wenn Sie es nicht angeben, beginnt die Sequenz bei 0 .

  • stop : Dies ist die letzte Zahl der Sequenz, aber die Sequenz wird kurz vor dieser Zahl stoppen. Dieses Argument ist erforderlich .

  • step : Dies ist die Menge, die Sie zwischen jeder Zahl in der Sequenz hinzufügen (oder subtrahieren) . Es ist optional , und wenn Sie es nicht angeben, erhöht sich die Sequenz jedes Mal um 1 .

Jetzt, da Sie die Syntax der range()-Funktion verstanden haben, lassen Sie uns einige Beispiele erkunden, um zu sehen, wie jedes Argument — start, stop und step — das Verhalten von Schleifen beeinflusst.

Ein einzelnes Argument

Wenn der range()-Funktion ein einzelnes Argument gegeben wird, behandelt sie dies als stop-Parameter.

In unserem Beispiel erzeugt sie eine Sequenz von 7 Elementen, beginnend bei 0 und endend bei 6. Die Schleife iteriert über diese Elemente und repräsentiert die ersten 7 Tage, an denen das Geschäft geöffnet ist.

123
# Announce store opening every day for 7 days for day in range(7): print(f"Good morning! The store is now open on day {day}.")
copy

Hinweis

Die Sequenz beginnt bei 0 und endet bei 6. Dies geschieht, weil Python oft bei 0 zu zählen beginnt, was die Notwendigkeit zur Anpassung der Indizierung in vielen Situationen reduziert.

Zwei Argumente

Wenn zwei Argumente angegeben werden, wie 25 (start) und 32 (stop), erzeugt range() eine Sequenz von 25 bis 31 (da der stop-Wert von der Sequenz ausgeschlossen ist).

123
# Planning seasonal sale days in the last week of December for day in range(25, 32): print(f"Seasonal sale on December {day}.")
copy

Hinweis

Mit dieser Methode der Indizierung, bei der das Endelement ausgeschlossen ist, können Sie leicht die Anzahl der Elemente in der Sequenz berechnen, indem Sie das start-Argument vom stop-Argument subtrahieren. Zum Beispiel, 32 - 25 = 7, was bedeutet, dass es 7 Elemente in der Sequenz gibt.

Drei Argumente

Durch Hinzufügen eines dritten Arguments zu range() führen Sie einen step-Wert ein, der den Inkrement zwischen jeder Zahl in der Sequenz definiert.

In diesem Beispiel nimmt range() 1 (start), 13 (stop) und 3 (step), was die Zahlen 1, 4, 7, 10 erzeugt. Diese können die Startzeiten der Mitarbeiterschichten während eines 12-Stunden-Arbeitstages darstellen.

123
# Schedule staff shifts every three hours throughout a 12-hour day for hour in range(1, 13, 3): print(f"Staff shift starts at hour {hour}.")
copy

Beispielanwendung

Mit der range()-Funktion können wir Aufgaben für jeden Tag der Woche planen, um sicherzustellen, dass alle Bereiche des Geschäfts abgedeckt sind.

Diese Schleife läuft 7 Mal, da range(7) Zahlen von 0 bis 6 erzeugt (insgesamt 7 Elemente). In jeder Schleife nimmt die Variable day einen Wert von 0 bis 6 an, der dann verwendet wird, um auf Elemente aus den Listen weekly_tasks und weekdays zuzugreifen.

123456789101112131415161718192021
# List of daily tasks for a week weekly_tasks = [ "Restock Fruits", "Clean Dairy Section", "Review Meat Inventory", "Restock Vegetables", "Check Bakery Expiry Dates", "Organize Front Displays", "Prepare Weekly Sales Report" ] # List of weekdays corresponding to each task weekdays = [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" ] # Loop through each day using the range function for day in range(7): task = weekly_tasks[day] # Access the task corresponding to the current day weekday = weekdays[day] # Access the corresponding weekday print(f"{weekday} Task: {task}")
copy
Aufgabe

Swipe to start coding

In dieser Aufgabe arbeiten Sie mit zwei Listen: einer, die Produkte auf Promotion für jeden Tag enthält, und einer anderen, die die Namen der Wochentage enthält. Ihr Ziel ist es, eine Schleife zu schreiben, die über beide Listen iteriert und den aktuellen Wochentag zusammen mit der entsprechenden Promotion ausgibt.

Code-Anweisungen

  • Verwenden Sie eine for-Schleife, um durch die Indizes der Listen mit der range()-Funktion zu iterieren.
  • Holen Sie sich bei jeder Iteration den aktuellen weekday aus der weekdays-Liste mit dem Index.
  • Holen Sie sich die entsprechende Promotion aus der daily_promotions-Liste mit demselben Index.
  • Drucken Sie den Wochentag und die Promotion im angegebenen Format aus.

Ausgabeanforderungen

  • Für jede Iteration drucken Sie den Wochentag und die Promotion im Format: <weekday>: Promotion on <promotion>.

Hinweis

Achten Sie auf die Anzahl der Elemente in den Listen.

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 3

Fragen Sie AI

expand
ChatGPT

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

book
Range-Funktion

Die range()-Funktion in Python ist eine eingebaute Funktion, die eine Sequenz von Zahlen erzeugt.

Sie wird oft zum Iterieren über eine Sequenz mit Schleifen verwendet, insbesondere wenn Sie eine Schleife eine bestimmte Anzahl von Malen ausführen müssen.

Dies ist ideal für Aufgaben, die ein vorhersehbares Wiederholungsmuster beinhalten, wie das Auffüllen von Regalen oder das Planen von Verkäufen in einem Supermarkt.

Schauen wir uns an, wie Alex die range()-Funktion nutzt, um Routineaufgaben in unserem Supermarktszenario effizient zu verwalten:

Syntax und Argumente

Die range()-Funktion kann bis zu drei Argumente annehmen, was sie für verschiedene Schleifenszenarien vielseitig macht.

Hier ist die allgemeine Syntax für die range-Funktion:

python
  • start : Dies ist die erste Zahl der Sequenz. Es ist optional , und wenn Sie es nicht angeben, beginnt die Sequenz bei 0 .

  • stop : Dies ist die letzte Zahl der Sequenz, aber die Sequenz wird kurz vor dieser Zahl stoppen. Dieses Argument ist erforderlich .

  • step : Dies ist die Menge, die Sie zwischen jeder Zahl in der Sequenz hinzufügen (oder subtrahieren) . Es ist optional , und wenn Sie es nicht angeben, erhöht sich die Sequenz jedes Mal um 1 .

Jetzt, da Sie die Syntax der range()-Funktion verstanden haben, lassen Sie uns einige Beispiele erkunden, um zu sehen, wie jedes Argument — start, stop und step — das Verhalten von Schleifen beeinflusst.

Ein einzelnes Argument

Wenn der range()-Funktion ein einzelnes Argument gegeben wird, behandelt sie dies als stop-Parameter.

In unserem Beispiel erzeugt sie eine Sequenz von 7 Elementen, beginnend bei 0 und endend bei 6. Die Schleife iteriert über diese Elemente und repräsentiert die ersten 7 Tage, an denen das Geschäft geöffnet ist.

123
# Announce store opening every day for 7 days for day in range(7): print(f"Good morning! The store is now open on day {day}.")
copy

Hinweis

Die Sequenz beginnt bei 0 und endet bei 6. Dies geschieht, weil Python oft bei 0 zu zählen beginnt, was die Notwendigkeit zur Anpassung der Indizierung in vielen Situationen reduziert.

Zwei Argumente

Wenn zwei Argumente angegeben werden, wie 25 (start) und 32 (stop), erzeugt range() eine Sequenz von 25 bis 31 (da der stop-Wert von der Sequenz ausgeschlossen ist).

123
# Planning seasonal sale days in the last week of December for day in range(25, 32): print(f"Seasonal sale on December {day}.")
copy

Hinweis

Mit dieser Methode der Indizierung, bei der das Endelement ausgeschlossen ist, können Sie leicht die Anzahl der Elemente in der Sequenz berechnen, indem Sie das start-Argument vom stop-Argument subtrahieren. Zum Beispiel, 32 - 25 = 7, was bedeutet, dass es 7 Elemente in der Sequenz gibt.

Drei Argumente

Durch Hinzufügen eines dritten Arguments zu range() führen Sie einen step-Wert ein, der den Inkrement zwischen jeder Zahl in der Sequenz definiert.

In diesem Beispiel nimmt range() 1 (start), 13 (stop) und 3 (step), was die Zahlen 1, 4, 7, 10 erzeugt. Diese können die Startzeiten der Mitarbeiterschichten während eines 12-Stunden-Arbeitstages darstellen.

123
# Schedule staff shifts every three hours throughout a 12-hour day for hour in range(1, 13, 3): print(f"Staff shift starts at hour {hour}.")
copy

Beispielanwendung

Mit der range()-Funktion können wir Aufgaben für jeden Tag der Woche planen, um sicherzustellen, dass alle Bereiche des Geschäfts abgedeckt sind.

Diese Schleife läuft 7 Mal, da range(7) Zahlen von 0 bis 6 erzeugt (insgesamt 7 Elemente). In jeder Schleife nimmt die Variable day einen Wert von 0 bis 6 an, der dann verwendet wird, um auf Elemente aus den Listen weekly_tasks und weekdays zuzugreifen.

123456789101112131415161718192021
# List of daily tasks for a week weekly_tasks = [ "Restock Fruits", "Clean Dairy Section", "Review Meat Inventory", "Restock Vegetables", "Check Bakery Expiry Dates", "Organize Front Displays", "Prepare Weekly Sales Report" ] # List of weekdays corresponding to each task weekdays = [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" ] # Loop through each day using the range function for day in range(7): task = weekly_tasks[day] # Access the task corresponding to the current day weekday = weekdays[day] # Access the corresponding weekday print(f"{weekday} Task: {task}")
copy
Aufgabe

Swipe to start coding

In dieser Aufgabe arbeiten Sie mit zwei Listen: einer, die Produkte auf Promotion für jeden Tag enthält, und einer anderen, die die Namen der Wochentage enthält. Ihr Ziel ist es, eine Schleife zu schreiben, die über beide Listen iteriert und den aktuellen Wochentag zusammen mit der entsprechenden Promotion ausgibt.

Code-Anweisungen

  • Verwenden Sie eine for-Schleife, um durch die Indizes der Listen mit der range()-Funktion zu iterieren.
  • Holen Sie sich bei jeder Iteration den aktuellen weekday aus der weekdays-Liste mit dem Index.
  • Holen Sie sich die entsprechende Promotion aus der daily_promotions-Liste mit demselben Index.
  • Drucken Sie den Wochentag und die Promotion im angegebenen Format aus.

Ausgabeanforderungen

  • Für jede Iteration drucken Sie den Wochentag und die Promotion im Format: <weekday>: Promotion on <promotion>.

Hinweis

Achten Sie auf die Anzahl der Elemente in den Listen.

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 3
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
Wir sind enttäuscht, dass etwas schief gelaufen ist. Was ist passiert?
some-alt