Funkcja map
Część sekcji Logika i przepływ programu ścieżki Python w Coddy. Lekcja 72 z 78.
Funkcja map() przyjmuje dwie główne rzeczy:
- Funkcję (która zawiera instrukcje dotyczące tego, co należy zrobić)
- Sekwencję elementów (taką jak lista lub dowolny zbiór elementów)
Następnie stosuje tę funkcję do każdego elementu sekwencji, po kolei, i zwraca wszystkie wyniki.
Na przykład:
def square(n):
return n * n
numbers = [1, 2, 3, 4, 5] # To tylko lista liczb
squared_numbers = map(square, numbers)
print(list(squared_numbers))
# Wynik: [1, 4, 9, 16, 25]Co się tutaj stało:
- Mamy listę liczb: [1, 2, 3, 4, 5]
- Funkcja
map()pobiera kolejno każdą liczbę - Przekazuje każdą liczbę do naszej funkcji
square - Zbiera wszystkie wyniki w odpowiedniej kolejności
Możesz wyobrazić to sobie jak linię montażową:
- Wchodzi liczba 1 → funkcja square zamienia ją w 1
- Wchodzi liczba 2 → funkcja square zamienia ją w 4
- Wchodzi liczba 3 → funkcja square zamienia ją w 9 I tak dalej...
Możesz także użyć funkcji lambda zamiast definiować osobną funkcję:
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(lambda n: n * n, numbers)
print(list(squared_numbers))
# Wynik: [1, 4, 9, 16, 25]Funkcja map() działa z dowolną kolekcją elementów — nie tylko liczbami. Mogą to być ciągi znaków lub dowolny inny typ danych, które chcesz przetwarzać w ten sam sposób.
Wyzwanie
ŁatwyUtwórz funkcję o nazwie convert_to_uppercase, która przyjmuje listę ciągów znaków strings jako argument. Funkcja powinna użyć funkcji map() wraz z funkcją lambda, aby zamienić każdy ciąg znaków na liście na wielkie litery. Funkcja powinna zwrócić listę zawierającą ciągi znaków zapisane wielkimi literami.
Spróbuj swoich sił
def convert_to_uppercase(strings):
# Użyj map() z funkcją lambda, aby zamienić ciągi znaków na wielkie litery
# Zastąp poniższą pustą listę tym wyrażeniem
uppercase_strings = []
# Zwróć listę ciągów znaków zapisanych wielkimi literami
return list(uppercase_strings)Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Logika i przepływ programu
1Odkrywanie zmiennych
StałeWielokrotne przypisania zmiennychZamiana zmiennychZmienne zastępczeZaokrąglanie liczbKonwersja na listę4Aplikacja książki kontaktów
Wyświetl menuDodaj kontakt7Zbiory — część 2
Działania matematyczne — część 1Działania matematyczne — część 2Powtórka — poszukiwanie skarbówPodzbiory i nadzbioryIterowanie po zbiorachPowtórka — śledzenie turnieju10Podstawowe składanie list
SkładniaTworzenie prostych listDodawanie warunkówUżywanie agregacji danychPowtórka – dom listPowtórka – elementy wolności13System zarządzania zapasami
Przegląd projektuDodawanie produktu2Słowniki — część 1
Czym jest słownik?Tworzenie słownikaDostęp do wartościModyfikowanie słownikówPowtórzenie — menedżer przepisów5Zaawansowane podejmowanie decyzji
Operator warunkowySprawdzanie przynależnościSprawdzanie tożsamościBłędy wcięćPowtórka — filtr wakacyjny8Menedżer rekordów uczniów
Przegląd projektuDodawanie ucznia11Zaawansowane funkcje
Zwracanie wielu wartościFunkcje lambda — część 1Funkcje lambda — część 2Wyzwanie podsumowujące — sortowanie z lambdaFunkcje rekurencyjne — część 1Funkcje rekurencyjne — część 2Podsumowanie — suma elementów zagnieżdżonej listy14Funkcje wyższego rzędu
Funkcja mapFunkcja filterPodsumowanie – walidator adresów e-mailPodsumowanie – procesor liczb3Słowniki, część 2
Metody słownikówZagnieżdżone słownikiSprawdzanie kluczyIterowanie po słownikachPowtórzenie — licznik częstotliwości9Zaawansowana agregacja danych
Używanie sumyZnajdowanie minimum i maksimumEfektywne sortowanie danychPowtórka – sortowanie słowników12Podstawowa obsługa błędów
Czym jest obsługa błędów?Blok try i exceptObsługa wielu wyjątkówPodsumowanie – błędy w koszyku zakupowymPoćwicz samodzielnie: Kompilator Python online