Erstelle eine Funktion, die ein Dictionary mit Produktbeständen und eine beliebige Anzahl von Transaktionsobjekten akzeptiert. Jedes Transaktionsobjekt sollte ein Produkt und eine Menge enthalten. Die Funktion sollte den Lagerbestand basierend auf den Transaktionen aktualisieren.
Definiere eine Funktion namens update_inventory
. Das erste Argument sollte ein Dictionary mit Produktbeständen sein, gefolgt von einer variablen Anzahl von Transaktionsobjekten, die mit *args
akzeptiert werden. Jedes Transaktionsobjekt sollte zwei Attribute haben: `product` und `quantity`. Positive Mengen erhöhen den Lagerbestand, während negative Mengen ihn verringern.
Beispiel: Für ein Anfangsinventar von `{'Apfel': 10, 'Birne': 5}` und Transaktionen, die 3 Äpfel hinzufügen und 2 Birnen entfernen, sollte die Funktion `update_inventory({'Apfel': 10, 'Birne': 5}, Transaction('Apfel', 3), Transaction('Birne', -2))` aufgerufen werden.
Code-Vorlage:
class Transaction: def __init__(self, product, quantity): self.product = product self.quantity = quantity def update_inventory(inventory, *transactions): """ Updates the inventory based on the provided transactions. Parameters: inventory (dict): The current inventory as a dictionary. *transactions (Transaction): Variable number of Transaction objects. Returns: None: Updates the inventory in-place. """ # TODO: Implementiere die Funktion ... if __name__ == '__main__': # Teste deine Funktion inventory = {'Apfel': 10, 'Birne': 5} transactions = [Transaction('Apfel', 3), Transaction('Birne', -2)] update_inventory(inventory, *transactions) print(inventory) # Erwarteter Output: {'Apfel': 13, 'Birne': 3}
update_inventory
und die Klasse Transaction
gemäß der Aufgabenstellung