Hàm filter() trong Python
Hàm filter() trong Python lọc ra các phần tử theo điều kiện của hàm func từ list, dict... Hàm này sẽ chỉ trả về những giá trị mà điều kiện trong func chấp nhận (có nghĩa là True). Cú pháp của hàm filter() như thế nào, nó có những tham số gì và cách sử dụng ra sao? Mời bạn đọc theo dõi.
Cú pháp hàm filter() trong Python
filter(func, iterable)
Các tham số của hàm filter()
Hàm filter() có 2 tham số:
- func: là hàm điều kiện để kiểm tra các phần tử trong interable là đúng hay sai, func chỉ có thể trả về True hoặc False.
- interable: là các iterable cần lọc, có thể là set, list, tuple hoặc container.
Ví dụ : Hàm filter() hoạt động thế nào?
# danh sách chữ cái
alphabet = ['a', 'b', 'd', 'e', 'i', 'j', 'o']
# lọc nguyên âm
# viết bởi Quantrimang.com
def filterNguyenam(alphabet):
nguyenam = ['a', 'e', 'i', 'o', 'u']
if(alphabet in nguyenam):
return True
else:
return False
filterNguyenam = filter(filterNguyenam, alphabet)
print('Các nguyên âm được lọc là:')
for nguyenam in filterNguyenam:
print(nguyenam)
Chạy chương trình, kết quả trả về là:
Các nguyên âm được lọc là:
a
e
i
o
Ở đây, ta liệt kê một danh sách các chữ cái và cần lọc ra các nguyên âm trong đó.
Bạn có thể sử dụng vòng lặp for để kiểm tra từng thành phần trong danh sách và lưu trữ nó sang một danh sách khác, nhưng sử dụng Python thì quá trình này sẽ dễ dàng hơn và nhanh hơn bằng cách dùng phương thức filter().
Ví dụ 2: filter() hoạt động không cần func.
# random list
# viết bởi Quantrimang.com
randomList = [1, 'a', 0, False, True, '0']
filteredList = filter(None, randomList)
print('Các phần tử được lọc là:')
for element in filteredList:
print(element)
Chạy chương trình, kết quả trả về là:
Các phần tử được lọc là:
1
a
True
0
Ở đây, ta có một danh sách ngẫu nhiên gồm cả số, chuỗi và boolean gọi là randomList. Chúng ta truyền randomList vào hàm filter() với tham số đầu tiên (func) là None. Lúc này, hàm tự mặc định trở thành Identity function, vậy nên ta nhận được các phần tử TRUE là 1, a, True và '0' ('0' ở dạng chuỗi).
Bạn nên đọc
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:


Cũ vẫn chất
-
Rắn cổ đỏ là rắn gì, có độc không?
Hôm qua -
Arc Browser có mặt trên Windows 10, phiên bản ARM sắp ra mắt
Hôm qua -
Sân si là gì? Ý nghĩa của sân si?
Hôm qua -
Hướng dẫn đổi DNS Google 8.8.8.8 và 8.8.4.4
Hôm qua -
Cách bật NFC trên iPhone dễ, nhanh nhất
Hôm qua -
Hướng dẫn cập nhật sinh trắc học ngân hàng Vietcombank
Hôm qua -
Code Sự tiến hóa tối thượng: Saiyan mới nhất và cách nhập code
Hôm qua -
Cách điều chỉnh kích thước ô trong bảng Word bằng nhau
Hôm qua -
Lời cảm ơn, tri ân thầy cô hay và xúc động
Hôm qua 1 -
Code Hiền Nhân Thuật mới nhất và cách nhập code
Hôm qua