Een tekstbestand bevat een aantal regels, waarop woorden gescheiden door spaties te vinden zijn. Er komen geen hoofdletters in dit bestand voor. Schrijf de functie tussenkarakter() met als enig argument de naam van het te onderzoeken tekstbestand. Het resultaat van de functie is een woordenboek, dat opgebouwd wordt zoals hieronder beschreven.

Beschouw elk woord uit dit tekstbestand, en vul het voor- en achteraan aan met een spatie. Bekijk vervolgens elke opeenvolging van 3 karakters in dit aangevulde woord. Noem deze karakters $$xyz$$. De sleutel (in het te bouwen woordenboek) die je haalt uit deze drie karakters, is de string gevormd door de opeenvolging van de karakters $$x$$ en $$z$$. Met elke sleutel stemt een lijst van karakters overeen als waarde die bij de sleutel hoort. Deze wordt gevormd door het tussenkarakter $$y$$. Het woordenboek bevat voor elke sleutel een lijst van mogelijke tussenkarakters die voorkomen in alle woorden uit het originele bestand. Deze lijst wordt alfabetisch opklimmend gesorteerd gebruik makend van de standaardmethode sorted().

Een voorbeeld ter verduidelijking: beschouw het woord 'vreemd'. Na aanvullen levert dit ' vreemd '. De eerste 3 karakters zijn ' vr'. Hiermee hebben we dus als sleutel ' r' en waarde 'v'. Analoog leveren de karakters 'vre' de sleutel 've' en de waarde 'r'. Het volledige woord vreemd resulteert daarom in het woordenboek

{' r':['v'], 've':['r'], 're':['e'],'em':['e'], 'ed':['m'], 'm ':['d']}
.

(Bemerk dat een dergelijk woordenboek kan gebruikt worden om ontbrekende karakters in een tekst te suggereren of om spelfouten te detecteren.)

Voorbeeld

Inhoud van het bestand 'Tekst_0_in.txt':
maan ma maak
roos markt rok
resultaat van de functie tussenkarakter()
tussenkarakter('Tekst_0_in.txt') =
{'ak': ['a', 'r'], 'rt': ['k'], 'a ': ['k', 'n'], 'os': ['o'], 'k ': ['t'], 'ro': ['o'], 
 'mr': ['a'], 'o ': ['k', 's'], ' o': ['r'], 'm ': ['a'], 'ma': ['a'], 'rk': ['o'], ' a': ['m'], 'an': ['a']}