Header ads

Header ads
» » » Hàm map() trong Python

Hàm map() tích hợp sẵn trong Python có tác dụng duyệt tất cả các phần tử của một iterable (list, tuple, dictionary...) qua một hàm cho trước và trả về một list kết quả sau khi thực thi.

Vậy cú pháp của hàm map() 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 map() trong Python

map(function, iterable, ...)

Các tham số của hàm map()

    Bạn có thể truyền nhiều iterablecho hàm map().

    Giá trị trả về từ map()

    Hàm map() duyệt tất cả các phần tử của iterable qua function và trả về một list kết quả sau khi thực thi.

    Giá trị trả về từ map() được gọi là map object. Đối tượng này có thể được truyền vào các hàm list() (để tạo list trong Python), hay set() (để tạo một set các phần tử mới)...

    Ví dụ 1: map() hoạt động như thế nào?

    def binhphuong(n):     return n*n      # viet boi Quantrimang.com   number = (25, 100, 225, 400)   ketqua = map(binhphuong, number)      # chuyen map object thanh list   print(list(ketqua))

    Khi bạn chạy chương trình, output trả về sẽ là:

    [25, 100, 225, 400]

    Ở ví dụ trên, mỗi phần tử trong tuple ban đầu đều được bình phương lên.

    Ví dụ 2: Cách sử dụng hàm lambda với map()

    Vì map() luôn cần tham số để truyền vào, vậy nên các hàm lambda thường xuyên được sử dụng với map().

    Trong Python, hàm lambda hay hàm vô danh được định nghĩa mà không có tên. Nếu các hàm bình thường được định nghĩa bằng cách sử dụng từ khóa def, thì hàm vô danh được định nghĩa bằng cách sử dụng từ khóa lambda

    Đọc thêm: Hàm vô danh, Lambda trong Python.

    # viet boi Quantrimang.com   number = (5, 10, 15, 20)   result = map(lambda x: x*x, number)      # chuyen map object thanh list   sobinhphuong = list(result)   print(sobinhphuong)

    Chạy chương trình, kết quả trả về là:

    [25, 100, 225, 400]

    Kết quả không khác gì ví dụ 1.

    Ví dụ 3: Truyền nhiều tham số iterator vào map() sử dụng lambda

    Trong ví dụ này, các phần tử 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))

    Kết quả trả về là:

    [9, 11, 13]

    Xem thêm: Các hàm Python tích hợp sẵn

    Khóa đào tạo Power BI phân tích báo cáo để bán hàng thành công


    Khóa học AutoIt dành cho dân IT và Marketing chuyên nghiệp

    Khóa học hướng dẫn sử dụng Powerpoint từ đơn giản đến phức tạp HIỆU QUẢ
    Khóa học Thiết kế, quản lý dữ liệu dự án chuyên nghiệp cho doanh nghiệp bằng Bizagi
     Khoa hoc hay
    Khóa học Phân tích dữ liệu sử dụng Power Query trong Excel
    Khóa học Phân tích dữ liệu sử dụng TableAU - Chìa khóa thành công!
    Nhấn vào đây để bắt đầu khóa học

    Khóa học "Thiết kế bài giảng điện tử", Video, hoạt hình 
    kiếm tiền Youtube bằng phần mềm Camtasia Studio
    Khóa học HƯỚNG DẪN THIẾT KẾ VIDEO CLIP CHO DÂN MARKETING CHUYÊN NGHIỆP
     Xây dựng website​​​​
    HƯỚNG DẪN THIẾT KẾ QUẢNG CÁO VÀ ĐỒ HỌA CHUYÊN NGHIỆP VỚI CANVA
    Hãy tham gia khóa học để trở thành người chuyên nghiệp. Tuyệt HAY!😲👍
     Khoa hoc hay
    http://hoc.elearninghaiphong.com/main/noidungkhoahoc/15



    GOOGLE SPREADSHEETS phê không tưởng
     Khoa hoc hay
    Khóa hoc lập trình bằng Python tại đây

    Hacker mũ trắng




    Hãy tham gia khóa học để biết mọi thứ

    Để tham gia tất cả các bài học, Bạn nhấn vào đây 
    Khóa học sử dụng Adobe Presenter-Tạo bài giảng điện tử
     Khoa hoc hay
    http://hoc.elearninghaiphong.com/main/noidungkhoahoc/71

    Khóa học sử dụng Edmodo để dạy và học hiện đại để thành công

    Tham gia nhóm Facebook

    Cập nhật công nghệ từ Youtube tại link: https://www.youtube.com/channel/UCAJ8Zn9hgWCefbt65CP0cSQ/videos
    Để tham gia khóa học công nghệ truy cập link: http://thuvien.hocviendaotao.com
    Mọi hỗ trợ về công nghệ email: dinhanhtuan68@gmail.com

    About Học viện đào tạo trực tuyến

    Xinh chào bạn. Tôi là Đinh Anh Tuấn - Thạc sĩ CNTT. Email: dinhanhtuan68@gmail.com .
    - Nhận đào tạo trực tuyến lập trình dành cho nhà quản lý, kế toán bằng Foxpro, Access 2010, Excel, Macro Excel, Macro Word, chứng chỉ MOS cao cấp, IC3, tiếng anh, phần mềm, phần cứng .
    - Nhận thiết kế phần mềm quản lý, Web, Web ứng dụng, quản lý, bán hàng,... Nhận Thiết kế bài giảng điện tử, số hóa tài liệu...
    HỌC VIỆN ĐÀO TẠO TRỰC TUYẾN:TẬN TÂM-CHẤT LƯỢNG.
    «
    Next
    Bài đăng Mới hơn
    »
    Previous
    Bài đăng Cũ hơn