Aan de slagBegin gratis

enumerate()

Aan de slag met enumereren! Je taak is om, gegeven een string, de functie retrieve_character_indices() te schrijven die een dictionary character_indices maakt. Elke sleutel is een uniek teken uit de string en de bijbehorende waarde is een lijst met de indices/posities van dit teken in de string.

Als je bijvoorbeeld de string 'ukulele' aan de functie retrieve_character_indices() meegeeft, moet het volgende resultaat ontstaan: {'e': [4, 6], 'k': [1], 'l': [3, 5], 'u': [0, 2]}.

Voor deze taak mag je geen stringmethoden gebruiken!

Deze oefening maakt deel uit van de cursus

Oefenen met coding-interviewvragen in Python

Bekijk cursus

Oefeninstructies

  • Definieer de for-lus die over de tekens in de string én hun indices itereert.
  • Werk de dictionary bij als de sleutel al bestaat.
  • Werk de dictionary bij als de sleutel ontbreekt.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

def retrieve_character_indices(string):
    character_indices = dict()
    # Define the 'for' loop
    for index, character in ____(____):
        # Update the dictionary if the key already exists
        if character in character_indices:
            ____[____].____(____)
        # Update the dictionary if the key is absent
        else:
            ____[____] = [____]
            
    return character_indices
  
print(retrieve_character_indices('enumerate an Iterable'))
Code bewerken en uitvoeren