Schrijf een functie bijna_gelijk(lijst)
die kijkt of alle strings in de lijst lijst
aan elkaar
gelijk zijn, op maximum één uitzondering na. (De functie moet True
teruggeven als dit het geval is, en anders False
.)
In de tabel hieronder zie je enkele voorbeelden van lijsten, en het resultaat dat we verwachten
als bijna_gelijk
wordt opgeroepen voor die lijst.
lijst | verwacht resultaat |
---|---|
['appel', 'appel', 'peer', 'appel'] |
True |
['appel', 'peer', 'peer', 'peer'] |
True |
['appel', 'peer', 'peer', 'appel', 'appel'] |
False |
['appel', 'appel', 'appel', 'appel'] |
True |
['appel', 'peer', 'banaan'] |
False |
['appel', 'banaan'] |
True |
['peer'] |
True |
[] |
True |
Los dit op met (een) gewone for- of for each-lus(sen). Een ‘while met dubbele conditie’ maakt het programma in dit geval te onleesbaar. Je hoeft de lus(sen) niet vroegtijdig te beëindigen.