Hàm map()
là một hàm được tích hợp sẵn trong Python, cho phép áp dụng một hàm nhất định lên từng phần tử của đối tượng có thể lặp lại (như danh sách, bộ dữ liệu, v.v.), và trả về một trình lặp chứa tất cả các giá trị mà hàm đã trả về. Cú pháp thông thường của nó như sau:
|
|
Trong đó:
hàm_số
là một hàm dùng để thực hiện thao tác trên mỗi phần tử củađối_tượng_lặp
. Hàm này có thể là một hàm tích hợp sẵn hoặc một hàm do người dùng tự định nghĩa.đối_tượng_lặp
là một hoặc nhiều đối tượng có thể lặp lại, chẳng hạn như danh sách, bộ dữ liệu, v.v. Nếu cung cấp nhiều đối tượng có thể lặp lại, hàmmap()
sẽ hoạt động theo cách đồng thời, tức là lấy các phần tử tương ứng từ mỗi đối tượng có thể lặp lại và truyền chúng làm tham số chohàm_số
.map()
sẽ trả về một trình lặp, bao gồm kết quả của việc áp dụnghàm_số
vào từng phần tử củađối_tượng_lặp
.
Dưới đây là một ví dụ đơn giản minh họa cách sử dụng hàm map()
để tính bình phương của mỗi số trong danh sách:
|
|
Trong ví dụ này, map(bình_phương, số)
sẽ truyền từng phần tử của danh sách số
vào hàm bình_phương()
, rồi trả về một trình lặp chứa các giá trị bình phương tương ứng.
Ngoài ra, nếu bạn muốn sử dụng nhiều đối tượng cùng lúc, hãy xem xét ví dụ dưới đây:
|
|
Trong trường hợp này, map()
nhận hai danh sách và áp dụng phép cộng giữa các phần tử tương ứng từ hai danh sách.
Hàm map()
rất hữu ích khi bạn cần xử lý nhanh chóng và gọn gàng các phần tử của một hoặc nhiều đối tượng có thể lặp lại mà không cần phải viết vòng lặp tường minh.