ID: 2923 OOP - Podstawy Średnie

Źródło: Arkusze CKE

Co zostanie wyświetlone po wykonaniu poniższego kodu w języku Python?
data = [1, 2, 3, 4, 5]
result = list(map(lambda x: x*2, filter(lambda x: x % 2 == 0, data)))
print(result)

Warianty odpowiedzi

  1. A

    [1, 2, 3, 4, 5]

  2. B

    [2, 6, 10]

  3. C

    [4, 8]

  4. D

    [2, 4, 6, 8, 10]

Wyjaśnienie

W tym kodzie mamy do czynienia z przetwarzaniem listy w dwóch krokach, czytając wyrażenie od wewnątrz do zewnątrz.

W pierwszym kroku funkcja filter odrzuca liczby nieparzyste i zostawia tylko te, dla których reszta z dzielenia przez 2 wynosi 0. Z listy [1, 2, 3, 4, 5] pozostają liczby 2 i 4.

W drugim kroku funkcja map bierze te przefiltrowane wartości i mnoży każdą z nich przez 2.

Z dwójki i czwórki powstają odpowiednio 4 oraz 8, tworząc ostateczną listę wyników [4, 8].

Sprawdź się w praktyce

Rozwiąż pełny test próbny INF.04 albo wylosuj pojedyncze pytanie na szybką powtórkę.

Podobne pytania — OOP - Podstawy