Filter() và hàm lambda
Trong bài trước, bạn đã dùng hàm lambda để nhúng ẩn danh một thao tác vào map(). Bạn sẽ luyện tập lại điều này trong bài này bằng cách dùng hàm lambda với filter(), có thể là mới với bạn! Hàm filter() cung cấp cách loại bỏ các phần tử khỏi một danh sách nếu chúng không thỏa tiêu chí nhất định.
Mục tiêu của bạn trong bài này là dùng filter() để tạo, từ một danh sách đầu vào gồm các chuỗi, một danh sách mới chỉ chứa những chuỗi có nhiều hơn 6 ký tự.
Bài tập này là một phần của khóa học
Giới thiệu về Functions trong Python
Hướng dẫn bài tập
- Trong lời gọi
filter(), truyền vào một hàm lambda và danh sách các chuỗifellowship. Hàm lambda cần kiểm tra xem số ký tự trong một chuỗimembercó lớn hơn 6 không; dùng hàmlen()để thực hiện. Gán đối tượng filter thu được choresult. - Chuyển
resultthành danh sách và in danh sách đó ra.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Create a list of strings: fellowship
fellowship = ['frodo', 'samwise', 'merry', 'pippin', 'aragorn', 'boromir', 'legolas', 'gimli', 'gandalf']
# Use filter() to apply a lambda function over fellowship: result
____ = filter(____, ____)
# Convert result to a list: result_list
____
# Print result_list
print(result_list)