Lagerbestand aktualisieren
Teil des Abschnitts Logic & Flow der Python-Journey von Coddy — Lektion 69 von 78.
Aufgabe
EinfachErstellen Sie eine Funktion namens update_stock, die zwei Argumente entgegennimmt: item (String) und quantity (Int). Die Funktion sollte:
- Prüfen, ob der Artikel im
inventory-Dictionary existiert.- Falls er nicht existiert, geben Sie
"Error: Item '<item>' not found."aus.
- Falls er nicht existiert, geben Sie
- Falls der Artikel existiert, berechnen Sie den neuen Bestand, indem Sie die
quantityzum aktuellen Bestand addieren.- Falls der neue Bestand negativ ist, geben Sie
"Error: Insufficient stock for '<item>'."aus und führen Sie keine Aktualisierung durch. - Andernfalls aktualisieren Sie den Bestand im
inventory.
- Falls der neue Bestand negativ ist, geben Sie
- Geben Sie
"Stock for '<item>' updated successfully."aus.
Fügen Sie den folgenden Codeblock am Ende Ihres Codes hinzu (bzw. ersetzen Sie ihn):
add_item("Apple", 0.5, 100)
add_item("Banana", 0.2, 50)
add_item("Apple", 0.6, 30) # Sollte eine Fehlermeldung ausgeben
update_stock("Apple", -20)
update_stock("Banana", 30)
update_stock("Orange", 10) # Sollte eine Fehlermeldung ausgeben
update_stock("Apple", -90)
print(inventory) Probier es selbst
inventory = {}
def add_item(item, price, stock):
if item in inventory:
print(f"Error: Item '{item}' already exists.")
return
try:
inventory[item] = {"price": float(price), "stock": int(stock)}
print(f"Item '{item}' added successfully.")
except ValueError:
print("Error: Price and stock must be numeric.")
add_item("Apple", 0.5, 100)
add_item("Banana", 0.2, 50)
add_item("Apple", 0.6, 30) # Should print an error
print(inventory) Alle Lektionen in Logic & Flow
1Variablen-Erkundung
KonstantenMehrfache VariablenzuweisungenVariablen tauschenPlatzhalter-VariablenZahlen rundenListen-Casting4Kontaktbuch-Anwendung
Menü anzeigenKontakt hinzufügen7Sets Teil 2
Mathematische Operationen Teil 1Mathematische Operationen Teil 2Rückblick – SchatzsucheTeilmengen und ObermengenIterieren über SetsRückblick – Turnier-Tracker10Grundlagen der List Comprehensions
Die SyntaxEinfache Listen erstellenBedingungen hinzufügenDatenaggregation nutzenRückblick - House Of ListsRückblick - Elements Of Freedom13Bestandsverwaltungssystem
ProjektübersichtArtikel hinzufügen2Dictionaries Teil 1
Was ist ein Dictionary?Ein Dictionary erstellenZugriff auf WerteDictionaries ändernRückblick – Rezept-Manager5Fortgeschrittene Entscheidungsfindung
Ternärer OperatorZugehörigkeitsprüfungenIdentitätsprüfungenEinrückungsfehlerZusammenfassung - Urlaubsfilter8Studenten-Datenverwaltung
ProjektübersichtStudent hinzufügen11Fortgeschrittene Funktionen
Mehrere Werte zurückgebenLambda-Funktionen Teil 1Lambda-Funktionen Teil 2Recap Challenge – Lambda SortRekursive Funktionen Teil 1Rekursive Funktionen Teil 2Recap – Verschachtelte Listen summieren14Funktionen höherer Ordnung
Die Map-FunktionDie Filter-FunktionWiederholung – E-Mail-ValidatorWiederholung – Zahlenprozessor3Dictionaries Teil 2
Dictionary-MethodenVerschachtelte DictionariesKeys überprüfenDictionaries durchlaufenZusammenfassung – Häufigkeitszähler9Fortgeschrittene Datenaggregation
Verwendung von SumMinimum und Maximum findenDaten effizient sortierenRückblick - Dictionary Sorter12Grundlagen der Fehlerbehandlung
Was ist Fehlerbehandlung?Der Try- und Except-BlockBehandlung mehrerer ExceptionsRückblick – Warenkorb-Fehler