1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Giới thiệu về Functions trong Python

Connected

Bài tập

Map() và hàm lambda

Đến giờ, bạn đã dùng hàm lambda để viết các hàm ngắn, đơn giản cũng như để định nghĩa lại những hàm có chức năng đơn giản. Tuy nhiên, trường hợp sử dụng tốt nhất cho hàm lambda là khi bạn muốn nhúng những chức năng đơn giản này một cách ẩn danh vào các biểu thức lớn hơn. Điều đó có nghĩa là chức năng không được lưu trong môi trường, khác với một hàm được định nghĩa bằng def. Để hiểu rõ hơn ý tưởng này, bạn sẽ dùng một hàm lambda trong ngữ cảnh của hàm map().

Hãy nhớ từ video rằng map() áp dụng một hàm lên một đối tượng, chẳng hạn như một danh sách. Ở đây, bạn có thể dùng hàm lambda để định nghĩa hàm mà map() sẽ dùng để xử lý đối tượng. Ví dụ:

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

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

Bạn có thể thấy một hàm lambda, hàm này bình phương giá trị a, được truyền vào map() cùng với một danh sách số, nums. Đối tượng map được tạo ra từ lời gọi map() được lưu trong result. Giờ bạn sẽ luyện tập dùng hàm lambda với map(). Trong bài này, bạn sẽ ánh xạ chức năng của hàm add_bangs() mà bạn đã định nghĩa ở các bài trước lên một danh sách chuỗi.

Hướng dẫn

100 XP
  • Trong lời gọi map(), truyền vào một hàm lambda nối chuỗi '!!!' vào một chuỗi item; đồng thời truyền danh sách các chuỗi spells. Gán đối tượng map thu được vào shout_spells.
  • Chuyển shout_spells thành danh sách và in ra danh sách.