Lambda function (hay còn gọi là hàm ẩn danh) trong Python là một loại hàm được định nghĩa mà không cần sử dụng từ khóa def
. Hàm này có thể nhận bất kỳ số lượng tham số nào, nhưng chỉ có thể có một biểu thức duy nhất. Lambda function thường được sử dụng khi bạn cần một hàm đơn giản trong một khoảng thời gian ngắn và không muốn định nghĩa một hàm chính thức với def
.
Cú pháp của lambda function là:
lambda arguments: expression
lambda
) và thường được sử dụng ở những nơi mà bạn không cần gọi lại.Lambda function thường được sử dụng với các hàm như map()
, filter()
, và sorted()
để áp dụng một thao tác cho các phần tử trong danh sách, tuple, hoặc các cấu trúc dữ liệu khác.
map()
numbers = [1, 2, 3, 4, 5] squared = list(map(lambda x: x ** 2, numbers)) print(squared) # Kết quả: [1, 4, 9, 16, 25]
filter()
numbers = [1, 2, 3, 4, 5] even_numbers = list(filter(lambda x: x % 2 == 0, numbers)) print(even_numbers) # Kết quả: [2, 4]
sorted()
points = [(2, 3), (1, 2), (4, 1)] sorted_points = sorted(points, key=lambda point: point[1]) print(sorted_points) # Kết quả: [(4, 1), (1, 2), (2, 3)]
add = lambda x, y: x + y print(add(3, 5)) # Kết quả: 8
names = ['Alice', 'Bob', 'Charlie'] sorted_names = sorted(names, key=lambda name: len(name)) print(sorted_names) # Kết quả: ['Bob', 'Alice', 'Charlie']
def
.Lambda function là một công cụ mạnh mẽ trong Python, giúp viết mã ngắn gọn và hiệu quả hơn cho các tác vụ đơn giản. Chúng đặc biệt hữu ích trong các hàm như map()
, filter()
, và sorted()
. Tuy nhiên, việc sử dụng lambda cũng cần được cân nhắc để tránh làm mã trở nên khó hiểu.