Anonymous function (hàm ẩn danh) là hàm không có tên. Trong Python, dùng từ khóa lambda để tạo. Gọi là lambda functions.
Đặc điểm
- Chỉ chứa một biểu thức duy nhất (expression), không phải statement.
- Tự động trả về kết quả biểu thức (không cần
return).
Ví dụ
# Sắp xếp list tuple theo phần tử thứ 2
pairs = [(1, 2), (3, 1), (5, 0)]
sorted_pairs = sorted(pairs, key=lambda x: x[1])
print(sorted_pairs) # [(5, 0), (3, 1), (1, 2)]
Đầu ra
[(5, 0), (3, 1), (1, 2)]
So sánh def vs lambda
| def | lambda | |
|---|---|---|
| Tên | Có | Không (anonymous) |
| Body | Nhiều statements | Một expression |
| Return | Tường minh | Tự động |
| Annotation | Hỗ trợ | Không (Python < 3.9) |
Lưu ý: Không lạm dụng lambda cho logic phức tạp. Dùng def để rõ ràng, dễ debug, có docstring.