Opgave
Schrijf de functie opsplitsen
waaraan de locatie en naam van een tekstbestand (str) wordt doorgegeven. De functie doet het volgende met de tekst:
- De woorden uit de tekst worden opgesplits in 2 dictionaries. Het eerste woord komt de eerste dictionarie terecht, het tweede woord in de tweede dictionary, het derde woord dan weer in de eerste en het vierde woord in de tweede dictionary, en zo verder. Elke dictionary heeft als sleutel (key) woorden en als waarde (value) de frequentie dat het woord voorkomt in die dictionary. Alle wooren worden in kleine letters opgeslagen.
- Naast deze 2 dictionaries wordt er een derde dictionary aangemaakt die enkel de gemeenschappelijke woorden uit de twee vorige dictionaries bevat als sleutel (key) en als waarde (value) de maximale frequentie uit de 2 dictionaries.
- alle dictionaries moeten alfabetisch gerangschikt worden op de sleutel (key).
De functie geeft deze 3 dictionaries terug in de volgorde: dictionary 1, dictinary 2 en als laatste de dictinoary met de gemeenschappelijke woorden.
Een woord in een tekst wordt gedefinieerd als een zo lang mogelijke reeks letters. Alle karakters die geen letter zijn, worden dus beschouwd als scheidingstekens voor woorden.
Voorbeeld
In onderstaande voorbeeld gaan we ervan uit dat het tekstbestand data.txt
zich in de huidige directory bevindt.
>>> opsplitsen('data_1.txt')
({'drie': 1, 'een': 3, 'twee': 1, 'vier': 1}, {'drie': 2, 'een': 1, 'twee': 2}, {'drie': 2, 'een': 3, 'twee': 2})