Voorbereiding

Ga na hoe Python reageert als je achtereenvolgens de volgende instructies uitvoert binnen een interactieve Python sessie:

  1. >>> d = {'broodjes': 6, 'koekjes': 11, 'bananen': 12}
    >>> d['bananen']
    

  2. >>> d['yoghurtjes'] = 12
    >>> len(d)
    

  3. >>> 'bananen' in d
    

  4. >>> d['tandenborstels']
    

  5. >>> d.get('tandenborstels', 0)
    

  6. >>> producten = list(d.keys())
    >>> producten.sort()
    >>> print(producten)
    

  7. >>> del d['broodjes']
    >>> 'broodjes' in d
    

Zorg er zeker voor dat je begrijpt waarom de verschillende resultaten gegenereerd worden.

Opgave

Pas hetgeen je net geleerd hebt toe om de bodies van de onderstaande twee functies aan te vullen. Je implementatie moet de gegeven doctest doorstaan.

def productToevoegen(winkelwagen, product, hoeveelheid=0):

    """
    Voegt een bepaalde hoeveelheid van een product toe aan een winkelwagentje.

    >>> winkelwagen = {}
    >>> productToevoegen(winkelwagen, 'koekjes', 10)
    10
    >>> 'koekjes' in winkelwagen
    True
    >>> winkelwagen['koekjes']
    10
    >>> aantalKoekjes = productToevoegen(winkelwagen, 'koekjes', 5)
    >>> aantalKoekjes
    15
    >>> winkelwagen['koekjes']
    15
    >>> productToevoegen(winkelwagen, 'yoghurtjes', -4)
    0
    >>> 'yoghurtjes' in winkelwagen
    False
    """
def productVerwijderen(winkelwagen, product, hoeveelheid=1):

    """
    Verwijdert een bepaalde hoeveelheid van een product uit een winkelwagentje.

    >>> winkelwagen = {}
    >>> productToevoegen(winkelwagen, 'koekjes', 10)
    10
    >>> productVerwijderen(winkelwagen, 'koekjes', 4)
    6
    >>> winkelwagen['koekjes']
    6
    >>> productVerwijderen(winkelwagen, 'koekjes', 8)
    0
    >>> 'koekjes' in winkelwagen
    False
    """