Listy składane i narzędzia funkcyjneListy składane kontra funkcja mapDodajemy warunki i pętle zagnieżdżone — filterFormalna składnia list składanychPrzykład — listy składane i macierzeNie nadużywaj list składanych: reguła KISSDruga strona medalu: wydajność, zwięzłość, ekspresyjnośćFunkcje i wyrażenia generatorówFunkcje generatorów — yield kontra returnZawieszanie stanuIntegracja protokołu iteracjiFunkcje generatorów w działaniuDlaczego funkcje generatorów?Rozszerzony protokół funkcji generatorów — send kontra nextWyrażenia generatorów — obiekty iterowalne spotykają złożeniaDlaczego wyrażenia generatora?Wyrażenia generatora a funkcja mapWyrażenia generatora a filtryFunkcje generatorów a wyrażenia generatorówGeneratory są obiektami o jednoprzebiegowej iteracjiGenerowanie wyników we wbudowanych typach, narzędziach i klasachGeneratory i narzędzia biblioteczne: skanery katalogówGeneratory i funkcje aplikacjiPrzegląd: obiekty iterowalne definiowane przez użytkownika w klasachPrzykład — generowanie mieszanych sekwencjiSekwencje mieszająceProste funkcjeFunkcje generatoraWyrażenia generatoraFunkcja testerPermutacje: wszystkie możliwe kombinacjeNie nadużywaj generatorów: reguła EIBTIInne spojrzenie: miejsce i czas, zwięzłość, ekspresyjnośćPrzykład — emulowanie funkcji zip i map za pomocą narzędzi iteracyjnychTworzymy własną implementację funkcji mapWłasna wersja funkcji zip(...) i map(None, ...)Podsumowanie obiektów składanychZakresy i zmienne składaneZrozumieć zbiory i słowniki składaneRozszerzona składnia zbiorów i słowników składanychPodsumowanie rozdziałuSprawdź swoją wiedzę — quizSprawdź swoją wiedzę — odpowiedzi