Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Listenverhalten in Funktionen | Funktionen
Einführung in Python
course content

Kursinhalt

Einführung in Python

Einführung in Python

1. Erste Schritte
2. Variablen und Typen
3. Bedingte Anweisungen
4. Andere Datentypen
5. Schleifen
6. Funktionen

book
Listenverhalten in Funktionen

Lassen Sie uns das Arbeiten mit Listen innerhalb von Funktionen erkunden. Obwohl es dem Arbeiten mit Zahlen ähnlich ist, gibt es einige wichtige Details, die beachtet werden müssen.

Listen sind veränderbar, was bedeutet, dass alle Änderungen, die an einer Liste innerhalb einer Funktion vorgenommen werden, auch die ursprüngliche Liste außerhalb der Funktion beeinflussen, wenn sie direkt übergeben wird.

Um dies zu verhindern, können Sie die Methode copy() mit jedem veränderbaren Datentyp verwenden. Dadurch erstellen Sie eine flache Kopie der Liste, die es Ihnen ermöglicht, ein Duplikat zu ändern, anstatt das Original. Dies stellt sicher, dass Änderungen, die innerhalb der Funktion vorgenommen werden, die ursprüngliche Liste nicht beeinflussen.

1234567891011121314
def add_strawberry(original_list): list_copy = original_list.copy() # Create a copy of the original list list_copy.append("Strawberry") # Modify the copied list return list_copy # Original list fruits = ["Apple", "Banana", "Cherry"] # Call the function new_fruits = add_strawberry(fruits) # Check the results print("Original list:", fruits) # ['Apple', 'Banana', 'Cherry'] print("Modified list:", new_fruits) # ['Apple', 'Banana', 'Cherry', 'Strawberry']
copy

In diesem Beispiel bleibt die ursprüngliche fruits-Liste unverändert, weil copy() verwendet wurde. Ohne copy() hätte das Ändern der Liste innerhalb der Funktion auch die ursprüngliche fruits-Liste verändert.

Aufgabe

Swipe to start coding

In dieser Aufgabe arbeiten Sie mit einer Liste von Produktpreisen aus einem Lebensmittelgeschäft. Ihr Ziel ist es, eine Funktion zu erstellen, die einen 10% Rabatt auf jedes Produkt anwendet, das über $2.00 kostet, während sichergestellt wird, dass die ursprüngliche Liste unverändert bleibt. Diese Übung hilft Ihnen, den Umgang mit Funktionen, Schleifen und Listenmanipulation in Python zu üben.

Code-Anweisungen

  • Definieren Sie eine Funktion namens apply_discount(prices), die eine Liste von Preisen als Argument nimmt.
  • Erstellen Sie innerhalb der Funktion eine Kopie der prices-Liste, um sicherzustellen, dass die ursprüngliche Liste unverändert bleibt. Weisen Sie die Kopie der Variable prices_copy zu.
  • Verwenden Sie eine for-Schleife, um durch die kopierte Liste mit Indizes zu iterieren.
  • Überprüfen Sie innerhalb der Schleife, ob jeder Preis über $2.00 liegt. Wenn ja, wenden Sie einen 10% Rabatt auf diesen Preis an.
  • Geben Sie die aktualisierte Version der kopierten Liste nach Anwendung der Rabatte zurück.

Ausgabeanforderungen

  • Die Funktion sollte eine neue Liste mit den rabattierten Preisen zurückgeben.
  • Drucken Sie die aktualisierte Liste der Preise im Format: Updated product prices: <$updated_prices>.

Hinweis

Es ist wichtig, durch die Liste mit Indizes (for index in range(len(prices)):) anstatt mit Werten (for price in prices:) zu iterieren, da Letzteres nur Kopien der Werte modifiziert und die ursprüngliche Liste unverändert lässt.

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 6. Kapitel 4
toggle bottom row

book
Listenverhalten in Funktionen

Lassen Sie uns das Arbeiten mit Listen innerhalb von Funktionen erkunden. Obwohl es dem Arbeiten mit Zahlen ähnlich ist, gibt es einige wichtige Details, die beachtet werden müssen.

Listen sind veränderbar, was bedeutet, dass alle Änderungen, die an einer Liste innerhalb einer Funktion vorgenommen werden, auch die ursprüngliche Liste außerhalb der Funktion beeinflussen, wenn sie direkt übergeben wird.

Um dies zu verhindern, können Sie die Methode copy() mit jedem veränderbaren Datentyp verwenden. Dadurch erstellen Sie eine flache Kopie der Liste, die es Ihnen ermöglicht, ein Duplikat zu ändern, anstatt das Original. Dies stellt sicher, dass Änderungen, die innerhalb der Funktion vorgenommen werden, die ursprüngliche Liste nicht beeinflussen.

1234567891011121314
def add_strawberry(original_list): list_copy = original_list.copy() # Create a copy of the original list list_copy.append("Strawberry") # Modify the copied list return list_copy # Original list fruits = ["Apple", "Banana", "Cherry"] # Call the function new_fruits = add_strawberry(fruits) # Check the results print("Original list:", fruits) # ['Apple', 'Banana', 'Cherry'] print("Modified list:", new_fruits) # ['Apple', 'Banana', 'Cherry', 'Strawberry']
copy

In diesem Beispiel bleibt die ursprüngliche fruits-Liste unverändert, weil copy() verwendet wurde. Ohne copy() hätte das Ändern der Liste innerhalb der Funktion auch die ursprüngliche fruits-Liste verändert.

Aufgabe

Swipe to start coding

In dieser Aufgabe arbeiten Sie mit einer Liste von Produktpreisen aus einem Lebensmittelgeschäft. Ihr Ziel ist es, eine Funktion zu erstellen, die einen 10% Rabatt auf jedes Produkt anwendet, das über $2.00 kostet, während sichergestellt wird, dass die ursprüngliche Liste unverändert bleibt. Diese Übung hilft Ihnen, den Umgang mit Funktionen, Schleifen und Listenmanipulation in Python zu üben.

Code-Anweisungen

  • Definieren Sie eine Funktion namens apply_discount(prices), die eine Liste von Preisen als Argument nimmt.
  • Erstellen Sie innerhalb der Funktion eine Kopie der prices-Liste, um sicherzustellen, dass die ursprüngliche Liste unverändert bleibt. Weisen Sie die Kopie der Variable prices_copy zu.
  • Verwenden Sie eine for-Schleife, um durch die kopierte Liste mit Indizes zu iterieren.
  • Überprüfen Sie innerhalb der Schleife, ob jeder Preis über $2.00 liegt. Wenn ja, wenden Sie einen 10% Rabatt auf diesen Preis an.
  • Geben Sie die aktualisierte Version der kopierten Liste nach Anwendung der Rabatte zurück.

Ausgabeanforderungen

  • Die Funktion sollte eine neue Liste mit den rabattierten Preisen zurückgeben.
  • Drucken Sie die aktualisierte Liste der Preise im Format: Updated product prices: <$updated_prices>.

Hinweis

Es ist wichtig, durch die Liste mit Indizes (for index in range(len(prices)):) anstatt mit Werten (for price in prices:) zu iterieren, da Letzteres nur Kopien der Werte modifiziert und die ursprüngliche Liste unverändert lässt.

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 6. Kapitel 4
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