Hàm map
Thuộc phần Logic và luồng chương trình trong hành trình Python của Coddy. Bài học 72 trên 78.
Hàm (function) map() nhận hai thành phần chính:
- Một hàm (chứa hướng dẫn về việc cần làm)
- Một chuỗi các phần tử (chẳng hạn như một danh sách hoặc bất kỳ tập hợp phần tử nào)
Sau đó, hàm này lần lượt áp dụng hàm đó cho từng phần tử trong chuỗi của bạn và trả về tất cả kết quả.
Ví dụ:
def square(n):
return n * n
numbers = [1, 2, 3, 4, 5] # Đây chỉ là một danh sách các số
squared_numbers = map(square, numbers)
print(list(squared_numbers))
# Đầu ra: [1, 4, 9, 16, 25]Điều gì đã xảy ra ở đây:
- Chúng ta có một danh sách các số: [1, 2, 3, 4, 5]
- Hàm (function)
map()lấy từng số một - Hàm này đưa từng số vào hàm
squarecủa chúng ta - Hàm này thu thập tất cả kết quả theo thứ tự
Bạn có thể hình dung nó như một dây chuyền lắp ráp:
- Số 1 được đưa vào → hàm bình phương cho ra 1
- Số 2 được đưa vào → hàm bình phương cho ra 4
- Số 3 được đưa vào → hàm bình phương cho ra 9, cứ thế tiếp tục...
Bạn cũng có thể dùng hàm lambda thay vì định nghĩa một hàm riêng:
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(lambda n: n * n, numbers)
print(list(squared_numbers))
# Đầu ra: [1, 4, 9, 16, 25]Hàm map() hoạt động với mọi tập hợp phần tử, không chỉ số. Đó có thể là chuỗi hoặc bất kỳ kiểu dữ liệu nào khác mà bạn muốn xử lý theo cùng một cách.
Thử thách
DễTạo một hàm tên là convert_to_uppercase nhận danh sách chuỗi strings làm đối số. Hàm này cần dùng hàm map() cùng với hàm lambda để chuyển từng chuỗi trong danh sách thành chữ in hoa. Hàm cần trả về một danh sách chứa các chuỗi viết hoa.
Tự làm thử
def convert_to_uppercase(strings):
# Dùng map() với hàm (function) lambda để chuyển các chuỗi thành chữ in hoa
# Thay danh sách rỗng bên dưới bằng biểu thức đó
uppercase_strings = []
# Trả về danh sách các chuỗi viết in hoa
return list(uppercase_strings)Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Logic và luồng chương trình
4Ứng dụng sổ liên lạc
Hiển thị menuThêm liên hệ7Tập hợp phần 2
Phép toán toán học phần 1Phép toán toán học phần 2Ôn tập: Săn tìm kho báuTập hợp con và tập hợp chaLặp qua các tập hợpÔn tập: Theo dõi giải đấu10Tạo danh sách bằng cú pháp rút gọn cơ bản
Cú phápTạo danh sách đơn giảnThêm điều kiệnSử dụng phép tổng hợp dữ liệuÔn tập: Ngôi nhà của những danh sáchÔn tập: Những phần tử tự do13Hệ thống quản lý hàng tồn kho
Tổng quan dự ánThêm mặt hàng2Từ điển phần 1
Từ điển là gì?Tạo từ điểnTruy cập giá trịChỉnh sửa từ điểnÔn tập: Trình quản lý công thức nấu ăn5Ra quyết định nâng cao
Toán tử ba ngôiKiểm tra thành viênKiểm tra danh tínhLỗi thụt lềÔn tập: Bộ lọc kỳ nghỉ8Trình quản lý hồ sơ học sinh
Tổng quan dự ánThêm học sinh3Từ điển, phần 2
Phương thức của từ điểnTừ điển lồng nhauKiểm tra khóaLặp qua từ điểnÔn tập: Bộ đếm tần suất6Tập hợp phần 1
Tập hợp là gì?Các phép toán cơ bảnCác phương thức của tập hợpÔn tập: Xóa phần tử trùng lặp9Tổng hợp dữ liệu nâng cao
Sử dụng tổngTìm giá trị nhỏ nhất và lớn nhấtSắp xếp dữ liệu hiệu quảÔn tập: Bộ sắp xếp từ điểnTự luyện tập: Trình biên dịch Python online