1. Learn
  2. /
  3. Cursuri
  4. /
  5. Introducere în funcții în Python

Connected

exercițiu

map() și funcțiile lambda

Până acum, ai folosit funcții lambda pentru a scrie funcții scurte și simple, dar și pentru a redefini funcții cu funcționalitate redusă. Cel mai bun caz de utilizare al funcțiilor lambda este însă atunci când vrei ca aceste funcționalități simple să fie incluse anonim în expresii mai mari. Asta înseamnă că funcționalitatea nu este stocată în mediu, spre deosebire de o funcție definită cu def. Pentru a înțelege mai bine această idee, vei folosi o funcție lambda în contextul funcției map().

Amintește-ți din videoclip că map() aplică o funcție asupra unui obiect, cum ar fi o listă. Aici poți folosi funcții lambda pentru a defini funcția pe care map() o va utiliza pentru a procesa obiectul. De exemplu:

nums = [2, 4, 6, 8, 10]

result = map(lambda a: a ** 2, nums)

Poți observa că o funcție lambda, care ridică valoarea a la puterea a 2-a, este transmisă lui map() împreună cu o listă de numere, nums. Obiectul map rezultat din apelul lui map() este stocat în result. Acum vei exersa utilizarea funcțiilor lambda împreună cu map(). În acest exercițiu, vei aplica funcționalitatea funcției add_bangs(), definită în exercițiile anterioare, asupra unei liste de șiruri de caractere.

Instrucțiuni

100 XP
  • În apelul map(), transmite o funcție lambda care concatenează șirul '!!!' la un șir item; transmite și lista de șiruri de caractere, spells. Atribuie obiectul map rezultat variabilei shout_spells.
  • Convertește shout_spells într-o listă și afișează această listă.