Ví dụ về hàm lambda Python là gì?
Mặc dù Python là ngôn ngữ lập trình hướng đối tượng, các hàm lambda rất hữu ích khi bạn đang thực hiện các loại lập trình hàm khác nhau Show
Ghi chú. bài viết này giả định rằng bạn đã hiểu về lập trình Python và cách sử dụng một hàm thông thường. Nó cũng cho rằng bạn có Python 3. 8 trở lên được cài đặt trên thiết bị của bạn Giải thích các hàm Lambda của PythonTrong Python, các hàm có thể nhận một hoặc nhiều đối số vị trí hoặc từ khóa, danh sách biến đối số, danh sách biến đối số từ khóa, v.v. Chúng có thể được chuyển vào hàm bậc cao hơn và được trả về dưới dạng đầu ra. Các hàm thông thường có thể có một số biểu thức và nhiều câu lệnh. Họ cũng luôn có một cái tên Hàm lambda Python chỉ đơn giản là một hàm ẩn danh. Nó cũng có thể được gọi là một chức năng không tên. Các hàm Python bình thường được xác định bởi từ khóa 0. Các hàm lambda trong Python thường bao gồm từ khóa 1, bất kỳ số lượng đối số nào và một biểu thứcGhi chú. các thuật ngữ hàm lambda, biểu thức lambda và biểu mẫu lambda có thể được sử dụng thay thế cho nhau, tùy thuộc vào ngôn ngữ lập trình hoặc lập trình viên Các hàm lambda chủ yếu được sử dụng như một lớp lót. Chúng được sử dụng rất thường xuyên trong các chức năng bậc cao hơn như 2 và 3. Điều này là do các hàm ẩn danh được truyền dưới dạng đối số cho các hàm bậc cao hơn, điều này không chỉ được thực hiện trong lập trình PythonHàm lambda cũng rất hữu ích để xử lý việc hiểu danh sách trong Python — với nhiều tùy chọn khác nhau để sử dụng biểu thức lambda Python cho mục đích này Lambdas rất tuyệt khi được sử dụng để kết xuất có điều kiện trong các khung giao diện người dùng như Tkinter, wxPython, Kivy, v.v. Mặc dù hoạt động của khung GUI Python không được đề cập trong bài viết này, nhưng một số đoạn mã tiết lộ việc sử dụng nhiều hàm lambda để hiển thị giao diện người dùng dựa trên tương tác của người dùng Những điều cần hiểu trước khi đi sâu vào các hàm Lambda của PythonVì Python là ngôn ngữ lập trình hướng đối tượng nên mọi thứ đều là đối tượng. Các lớp Python, thể hiện lớp, mô-đun và hàm đều được xử lý dưới dạng đối tượng Một đối tượng chức năng có thể được gán cho một biến Không có gì lạ khi gán biến cho các hàm thông thường trong Python. Hành vi này cũng có thể được áp dụng cho các hàm lambda. Điều này là do chúng là các đối tượng chức năng, mặc dù chúng không có tên
Các hàm bậc cao hơn như map(), filter() và reduce()Có thể bạn sẽ cần sử dụng hàm lambda trong các hàm tích hợp sẵn như 3 và 2, cũng như với 6 — được nhập từ mô-đun funcools trong Python, vì đây không phải là hàm tích hợp sẵn. Theo mặc định, các hàm bậc cao hơn là các hàm nhận các hàm khác làm đối sốNhư đã thấy trong các ví dụ mã bên dưới, các hàm bình thường có thể được thay thế bằng lambda, được chuyển dưới dạng đối số vào bất kỳ hàm bậc cao nào trong số này ________số 8
0Sự khác biệt giữa một tuyên bố và một biểu thứcMột điểm gây nhầm lẫn phổ biến giữa các nhà phát triển là sự khác biệt giữa một câu lệnh và một biểu thức trong lập trình Câu lệnh là bất kỳ đoạn mã nào thực hiện điều gì đó hoặc thực hiện một hành động — chẳng hạn như điều kiện 7 hoặc 8Một biểu thức được tạo thành từ sự kết hợp của các biến, giá trị và toán tử và đánh giá thành một giá trị mới Sự khác biệt này rất quan trọng khi chúng ta khám phá chủ đề về các hàm lambda trong Python. Một biểu thức như biểu thức bên dưới trả về một giá trị 3Một tuyên bố trông như thế này 4Cách sử dụng các hàm Lambda trong PythonHướng dẫn về phong cách Python quy định rằng mọi hàm lambda phải bắt đầu bằng từ khóa 1 (không giống như các hàm thông thường, bắt đầu bằng từ khóa 0). Cú pháp của hàm lambda thường như sau 7Các hàm lambda có thể nhận bất kỳ số lượng đối số vị trí, đối số từ khóa hoặc cả hai, theo sau là dấu hai chấm và chỉ một biểu thức. Không thể có nhiều hơn một biểu thức vì nó bị hạn chế về mặt cú pháp. Hãy xem xét một ví dụ về biểu thức lambda bên dưới 8Từ ví dụ trên, biểu thức lambda được gán cho biến 01. Một lệnh gọi hàm được thực hiện bằng cách truyền các đối số, có giá trị là 14Hãy lấy một ví dụ khác dưới đây 0Như đã thấy ở trên, hàm lambda ước tính là 728. 0. Một sự kết hợp của các đối số vị trí và từ khóa được sử dụng trong hàm lambda Python. Trong khi sử dụng các đối số vị trí, chúng ta không thể thay đổi thứ tự được nêu trong định nghĩa hàm. Tuy nhiên, chúng ta chỉ có thể đặt các đối số từ khóa ở bất kỳ vị trí nào sau các đối số vị trí Các hàm lambda luôn được thực thi giống như các biểu thức hàm được gọi ngay lập tức (IIFE) trong JavaScript. Điều này chủ yếu được sử dụng với trình thông dịch Python, như trong ví dụ sau 1Đối tượng hàm lambda được bao bọc trong dấu ngoặc đơn và một cặp dấu ngoặc đơn khác theo sát với các đối số được truyền. Là một IIFE, biểu thức được đánh giá và hàm trả về một giá trị được gán cho biến Các hàm lambda của Python cũng có thể được thực thi trong phạm vi hiểu danh sách. Việc hiểu danh sách luôn có biểu thức đầu ra, được thay thế bằng hàm lambda. Dưới đây là một số ví dụ 0 1Các hàm lambda có thể được sử dụng khi viết các biểu thức bậc ba trong Python. Một biểu thức bậc ba đưa ra một kết quả dựa trên một điều kiện nhất định. Kiểm tra các ví dụ dưới đây 2 3Các hàm lambda trong các hàm bậc cao hơnKhái niệm hàm bậc cao phổ biến trong Python, cũng như trong các ngôn ngữ khác. Chúng là các hàm chấp nhận các hàm khác làm đối số và cũng trả về các hàm dưới dạng đầu ra Trong Python, một hàm bậc cao hơn có hai đối số. một chức năng, và một iterable. Đối số hàm được áp dụng cho từng mục trong đối tượng có thể lặp lại. Vì chúng ta có thể chuyển một hàm làm đối số cho một hàm bậc cao hơn, nên chúng ta cũng có thể chuyển một hàm lambda như nhau Dưới đây là một số ví dụ về hàm lambda được sử dụng với hàm 2 4 5Dưới đây là một số hàm lambda được sử dụng với hàm 3 6 7Dưới đây là một số hàm lambda được sử dụng với hàm 6 8 9Phần kết luậnMặc dù lambdas Python có thể giảm đáng kể số lượng dòng mã bạn viết, nhưng chúng nên được sử dụng một cách tiết kiệm và chỉ khi cần thiết. Khả năng đọc mã của bạn nên được ưu tiên hơn tính đồng nhất. Để có mã dễ đọc hơn, hãy luôn sử dụng một hàm bình thường phù hợp với các hàm lambda, theo khuyến nghị của Hướng dẫn về kiểu dáng Python Lambdas có thể rất hữu ích với các biểu thức bậc ba của Python, nhưng một lần nữa, hãy cố gắng không hy sinh khả năng đọc. Các hàm lambda thực sự phát huy tác dụng của chúng khi các hàm bậc cao hơn đang được sử dụng Tóm tắt
Nội dung liên quan
Chia sẻ bài viết nàyban đầu Arthur Ini là một người đam mê khởi nghiệp, kỹ sư phần mềm và nhà văn kỹ thuật. Flutter và Django là những công cụ yêu thích của anh ấy tại thời điểm này để xây dựng các giải pháp phần mềm. Anh ấy yêu nhạc Afrobeats Hàm lambda trong lập trình Python là gì?Hàm Python Lambda là hàm ẩn danh nghĩa là hàm không có tên . Như chúng ta đã biết từ khóa def được sử dụng để định nghĩa một hàm bình thường trong Python. Tương tự, từ khóa lambda được sử dụng để xác định hàm ẩn danh trong Python.
chức năng lambda giải thích với sự trợ giúp của ví dụ là gì?Toán tử lambda không thể có bất kỳ câu lệnh nào và nó trả về một đối tượng hàm mà chúng ta có thể gán cho bất kỳ biến nào . Ví dụ. phần còn lại = số lambda. num % 2 in(phần còn lại(5)) Đầu ra 1. Trong mã này, lambda num. num % 2 là hàm lambda.
biểu thức lambda là gì đưa ra một ví dụ?Biểu thức Lambda đã được thêm vào Java 8. Biểu thức lambda là một khối mã ngắn nhận tham số và trả về giá trị . Các biểu thức lambda tương tự như các phương thức, nhưng chúng không cần tên và chúng có thể được triển khai ngay trong phần thân của một phương thức.
Hàm lambda() được gọi như thế nào?Hàm Lambda, còn được gọi là ' Hàm ẩn danh ' giống như một hàm python thông thường nhưng có thể được định nghĩa mà không cần tên. Trong khi các chức năng thông thường được xác định bằng từ khóa def, thì các chức năng ẩn danh được xác định bằng từ khóa lambda. Tuy nhiên, chúng bị giới hạn trong một dòng biểu thức. |