Wbudowane narzędzia w praktyce: map()
W tym ćwiczeniu przećwiczysz użycie wbudowanej funkcji map(), która pozwala zastosować dowolną funkcję do każdego elementu obiektu. Przyjrzyj się liście gości na przyjęciu:
names = ['Jerry', 'Kramer', 'Elaine', 'George', 'Newman']
Powiedzmy, że chcesz utworzyć nową listę (o nazwie names_uppercase), w której wszystkie litery każdego imienia są zamienione na wielkie. Można to zrobić za pomocą poniższej pętli for:
names_uppercase = []
for name in names:
names_uppercase.append(name.upper())
['JERRY', 'KRAMER', 'ELAINE', 'GEORGE', 'NEWMAN']
Sprawdźmy teraz, jak wykonać to samo wydajniej – w jednej linii kodu – używając funkcji map().
To ćwiczenie jest częścią kursu
Wydajny kod w Pythonie
Instrukcje do ćwiczenia
- Użyj funkcji
map()i metodystr.upper(), aby zamienić każde imię z listynamesna wielkie litery. Wynik zapisz do zmiennejnames_map. - Wyświetl typ danych zmiennej
names_map. - Rozpakuj zawartość
names_mapdo listy o nazwienames_uppercase, używając operatora gwiazdki (*). - Wyświetl
names_uppercasei sprawdź jej zawartość.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Use map to apply str.upper to each element in names
names_map = ____(____, ____)
# Print the type of the names_map
print(____(____))
# Unpack names_map into a list
names_uppercase = [____]
# Print the list created above
print(____)