enumerate()
Pojďme na to s enumerate()! Tvým úkolem je definovat funkci retrieve_character_indices(), která pro zadaný řetězec vytvoří slovník character_indices. Každý klíč slovníku představuje jedinečný znak z řetězce a příslušná hodnota je seznam indexů/pozic, na kterých se daný znak v řetězci vyskytuje.
Například po předání řetězce 'ukulele' funkci retrieve_character_indices() by měl být výstup následující: {'e': [4, 6], 'k': [1], 'l': [3, 5], 'u': [0, 2]}.
Pro tento úkol nesmíš použít žádné řetězcové metody!
Toto cvičení je součástí kurzu
Procvičování otázek z kódovacích pohovorů v Pythonu
Pokyny k cvičení
- Definuj smyčku
for, která prochází znaky řetězce spolu s jejich indexy. - Aktualizuj slovník v případě, že daný klíč už existuje.
- Aktualizuj slovník v případě, že daný klíč chybí.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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'))