Hàm map () áp dụng một hàm đã cho cho từng mục của một tệp có thể lặp lại (danh sách, bộ tuple, v.v.) và trả về danh sách kết quả.
Cú pháp của map()
là:
bản đồ (chức năng, có thể lặp lại,…)
map () Tham số
- function -
map()
chuyển từng mục của có thể lặp lại cho hàm này. - có thể lặp lại - có thể lặp lại sẽ được ánh xạ
Bạn có thể chuyển nhiều hơn một map()
hàm có thể lặp lại .
Giá trị trả về từ bản đồ ()
Các map()
chức năng áp dụng cho chức năng cho từng hạng mục của một iterable và trả về một danh sách các kết quả.
Giá trị trả về từ map()
(đối tượng bản đồ) sau đó có thể được chuyển đến các hàm như list () (để tạo danh sách), set () (để tạo một tập hợp), v.v.
Ví dụ 1: Làm việc của map ()
def calculateSquare(n): return n*n numbers = (1, 2, 3, 4) result = map(calculateSquare, numbers) print(result) # converting map object to set numbersSquare = set(result) print(numbersSquare)
Đầu ra
(16, 1, 4, 9)
Trong ví dụ trên, mỗi mục của bộ tuple là bình phương.
Vì map()
mong đợi một hàm được truyền vào, các hàm lambda thường được sử dụng khi làm việc với các map()
hàm.
Hàm lambda là một hàm ngắn không có tên. Truy cập trang này để tìm hiểu thêm về Hàm lambda trong Python.
Ví dụ 2: Làm thế nào để sử dụng hàm lambda với map ()?
numbers = (1, 2, 3, 4) result = map(lambda x: x*x, numbers) print(result) # converting map object to set numbersSquare = set(result) print(numbersSquare)
Đầu ra
(16, 1, 4, 9)
Không có sự khác biệt về chức năng của ví dụ này và ví dụ 1 .
Ví dụ 3: Truyền nhiều lặp lại để ánh xạ () bằng Lambda
Trong ví dụ này, các mục tương ứng của hai danh sách được thêm vào.
num1 = (4, 5, 6) num2 = (5, 6, 7) result = map(lambda n1, n2: n1+n2, num1, num2) print(list(result))
Đầu ra
(9, 11, 13)