Created
October 31, 2018 21:25
-
-
Save janaslo/8228b5cdc0fe4b4e5b2f6adc6ddf6da0 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def roztrid_1(seznam_slov): | |
"""Funkce bere jako parametr seznam řetězců, který roztřídí | |
podle počátečního písmena: návratovou hodnotou je slovník, | |
kde je klíčem vždy první písmeno a hodnotou řetězec, který | |
na toto písmeno začíná. | |
Nejsou nijak ošetřeny kolize - pokud na stejné písmeno | |
začíná více slov ze seznamu, ve výsledném slovníku | |
se objevuje jen poslední z nich. | |
""" | |
vysledek = {} | |
for slovo in seznam_slov: | |
prvni_pismeno = slovo[0] | |
vysledek[prvni_pismeno] = slovo | |
return vysledek | |
def roztrid_2(seznam_slov): | |
"""Funkce bere jako parametr seznam řetězců, který roztřídí | |
podle počátečního písmena: návratovou hodnotou je slovník, | |
kde je klíčem vždy první písmeno a hodnotou seznam řetězců, | |
které na toto písmeno začínají. | |
""" | |
vysledek = {} | |
for slovo in seznam_slov: | |
prvni_pismeno = slovo[0] | |
if prvni_pismeno not in vysledek: # pokud tento klíč ještě nemáme ... | |
vysledek[prvni_pismeno] = [] # ... přidáme prázdný seznam | |
vysledek[prvni_pismeno].append(slovo) | |
return vysledek | |
ovoce = ['jablko', 'meloun'] | |
ovoce_s_opakovanim = ['jablko', 'meloun', 'jahoda'] | |
print(roztrid_1(ovoce)) # {'j': 'jablko', 'm':'meloun'} | |
print(roztrid_1(ovoce_s_opakovanim)) # {'j': 'jahoda', 'm': 'meloun'} | |
print(roztrid_2(ovoce)) # {'j': ['jablko'], 'm':['meloun']} | |
print(roztrid_2(ovoce_s_opakovanim)) # {'j': ['jablko', 'jahoda'], 'm':['meloun']} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment