Aan de slagGa gratis aan de slag

Doctest gebruiken

We hebben zojuist geleerd over doctest. Als je volledige docstrings met voorbeelden schrijft, is dit een eenvoudige manier om je functies minimaal te testen. In deze oefening ga je praktisch aan de slag met testen en debuggen met doctest.

De volgende zaken zijn al voor je geladen in je omgeving: doctest, Counter en text_analyzer.

Let op: je docstring-invoer moet exact overeenkomen met de oplossing. Als het meerdere keren misgaat, is het een goed idee om de voorbeeldcode te vernieuwen en opnieuw te beginnen.

Deze oefening maakt deel uit van de cursus

Software-engineeringprincipes in Python

Cursus bekijken

Oefeninstructies

  • Maak de invoer van het voorbeeld in de docstring voor sum_counters af.
  • Maak het docstring-voorbeeld compleet door de verwachte output in te vullen.
  • Voer de functie testmod uit vanuit doctest om de voorbeeldcode van je functie te testen.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

def sum_counters(counters):
    """Aggregate collections.Counter objects by summing counts

    :param counters: list/tuple of counters to sum
    :return: aggregated counters with counts summed

    >>> d1 = text_analyzer.Document('1 2 fizz 4 buzz fizz 7 8')
    >>> d2 = text_analyzer.Document('fizz buzz 11 fizz 13 14')
    >>> ____([d1.word_counts, d2.word_counts])
    ____
    """
    return sum(counters, Counter())

____
Code bewerken en uitvoeren