Hướng dẫn can we use if in lambda function in python? - chúng ta có thể sử dụng if trong hàm lambda trong python không?

Trong bài viết này, chúng tôi sẽ thảo luận về cách sử dụng nếu, nếu không nếu và khác trong một chức năng Lambda trong & nbsp; Python. Cũng sẽ giải thích cách sử dụng hàm lambda có điều kiện với Filter () trong Python.

Sử dụng nếu khác trong chức năng Lambda

Sử dụng nếu khác trong chức năng Lambda là rất khó, cú pháp như sau,

lambda <arguments> : <Return Value if condition is True> if <condition> else <Return Value if condition is False>

Ví dụ, hãy để Lôi tạo chức năng Lambda để kiểm tra xem giá trị đã cho là từ 10 đến 20, tức là

lambda x : True if (x > 10 and x < 20) else False

Ở đây chúng tôi đang sử dụng nếu khác trong hàm lambda, nếu giá trị được cho là từ 10 đến 20 thì nó sẽ trả về đúng thì nó sẽ trả về sai. Bây giờ, hãy để sử dụng chức năng này để kiểm tra một số giá trị, tức là.True else it will return False. Now let’s use this function to check some values i.e.

# Lambda function to check if a given vaue is from 10 to 20.
test = lambda x : True if (x > 10 and x < 20) else False

# Check if given numbers are in range using lambda function
print(test(12))
print(test(3))
print(test(24))

Đầu ra:

True
False
False

Tạo chức năng Lambda có điều kiện mà không có nếu khác

Sử dụng ‘nếu các từ khóa khác của người khác làm cho mọi thứ dễ hiểu, nhưng ở Lambda, chúng ta có thể tránh sử dụng các từ khóa IF & ELSE và vẫn đạt được kết quả tương tự. Ví dụ: hãy để sửa đổi chức năng Lambda được tạo ở trên bằng cách xóa nếu các từ khóa khác & cũng đúng sai, tức là.

lambda x : x > 10 and x < 20

Hàm Lambda này thực hiện các công cụ tương tự như trên i..e kiểm tra xem số được cho là nằm trong khoảng từ 10 đến 20. Bây giờ, hãy để sử dụng chức năng này để kiểm tra một số giá trị, tức là.

# Lambda function to check if a given vaue is from 10 to 20.
check = lambda x : x > 10 and x < 20

# Check if given numbers are in range using lambda function
print(check(12))
print(check(3))
print(check(24))

Đầu ra:

True
False
False

Tạo chức năng Lambda có điều kiện mà không có nếu khác

Sử dụng ‘nếu các từ khóa khác của người khác làm cho mọi thứ dễ hiểu, nhưng ở Lambda, chúng ta có thể tránh sử dụng các từ khóa IF & ELSE và vẫn đạt được kết quả tương tự. Ví dụ: hãy để sửa đổi chức năng Lambda được tạo ở trên bằng cách xóa nếu các từ khóa khác & cũng đúng sai, tức là. function accepts a callback() function and a list of elements. It iterates over all elements in list and calls the given callback() function
on each element. If callback() returns True then it appends that element in the new list. In the end it returns a new list of filtered elements only.

Hàm Lambda này thực hiện các công cụ tương tự như trên i..e kiểm tra xem số được cho là nằm trong khoảng từ 10 đến 20. Bây giờ, hãy để sử dụng chức năng này để kiểm tra một số giá trị, tức là.

# List of numbers
listofNum = [1,3,33,12,34,56,11,19,21,34,15]

Sử dụng hàm Filter () có hàm Lambda có điều kiện (với nếu khác)

# Filter list of numbers by keeping numbers from 10 to 20 in the list only
listofNum = list(filter(lambda x : x > 10 and x < 20, listofNum))
print('Filtered List : ', listofNum)

Đầu ra:

Filtered List :  [12, 11, 19, 15]

Tạo chức năng Lambda có điều kiện mà không có nếu khác

Sử dụng ‘nếu các từ khóa khác của người khác làm cho mọi thứ dễ hiểu, nhưng ở Lambda, chúng ta có thể tránh sử dụng các từ khóa IF & ELSE và vẫn đạt được kết quả tương tự. Ví dụ: hãy để sửa đổi chức năng Lambda được tạo ở trên bằng cách xóa nếu các từ khóa khác & cũng đúng sai, tức là.

Hàm Lambda này thực hiện các công cụ tương tự như trên i..e kiểm tra xem số được cho là nằm trong khoảng từ 10 đến 20. Bây giờ, hãy để sử dụng chức năng này để kiểm tra một số giá trị, tức là.

Sử dụng hàm Filter () có hàm Lambda có điều kiện (với nếu khác)

lambda x : True if (x > 10 and x < 20) else False
0

Hàm Filter () chấp nhận hàm gọi lại () và danh sách các phần tử. Nó lặp lại trên tất cả các phần tử trong danh sách và gọi hàm gọi lại () đã cho trên mỗi phần tử. Nếu Callback () trả về true thì nó sẽ nối phần tử đó trong danh sách mới. Cuối cùng, nó chỉ trả về một danh sách mới các yếu tố được lọc.

Giả sử chúng ta có một danh sách các số, tức là.

  • Bây giờ, hãy để bộ lọc sử dụng bộ lọc () để lọc số từ 10 đến 20 chỉ bằng cách chuyển hàm lambda có điều kiện (với nếu khác) cho nó, tức là.
  • Nó sử dụng chức năng Lambda được thông qua để lọc các yếu tố và trong danh sách các phần tử trả về cuối cùng nằm trong khoảng từ 10 đến 20,
  • Quảng cáo
lambda x : True if (x > 10 and x < 20) else False
1

Sử dụng if, Elif & khác trong hàm Lambda

lambda x : True if (x > 10 and x < 20) else False
2

Đầu ra:

lambda x : True if (x > 10 and x < 20) else False
3

Tạo chức năng Lambda có điều kiện mà không có nếu khác

lambda x : True if (x > 10 and x < 20) else False
4

Output:

lambda x : True if (x > 10 and x < 20) else False
5

Lambda có thể có chức năng có nếu?

Nó phải có giá trị trả lại. Vì hàm Lambda phải có giá trị trả về cho mọi đầu vào hợp lệ, chúng tôi không thể định nghĩa nó với nếu không có khác vì chúng tôi không chỉ định chúng tôi sẽ trả lại nếu điều kiện IF sẽ sai, tức là phần khác của nó.we cannot define it with if but without else as we are not specifying what will we return if the if-condition will be false i.e. its else part.

Những hạn chế của chức năng Lambda trong Python là gì?

Trong Python, các chức năng Lambda khá hạn chế.Họ có thể lấy bất kỳ số lượng đối số;Tuy nhiên, chúng chỉ có thể chứa một câu lệnh và được viết trên một dòng.Điều này sẽ áp dụng hàm ẩn danh Lambda X: X * 2 cho mỗi mục được trả về theo phạm vi (10).They can take any number of arguments; however they can contain only one statement and be written on a single line. This will apply the anonymous function lambda x: x * 2 to every item returned by range(10) .

Hai điều kiện cần thiết để sử dụng hàm Lambda trong một chuỗi là gì?

Để khớp với Lambda với một giao diện phương thức duy nhất, còn được gọi là "giao diện chức năng", một số điều kiện cần được đáp ứng: giao diện chức năng phải có chính xác một phương thức không được thực hiện và phương pháp đó (tự nhiên) phải trừu tượng.The functional interface has to have exactly one unimplemented method, and that method (naturally) has to be abstract.

Cách chính xác để sử dụng hàm lambda là gì?

Cú pháp.Nói một cách đơn giản, một hàm lambda giống như bất kỳ hàm python bình thường nào, ngoại trừ việc nó không có tên khi xác định nó và nó được chứa trong một dòng mã.Một hàm Lambda đánh giá một biểu thức cho một đối số nhất định.Bạn cung cấp cho hàm một giá trị (đối số) và sau đó cung cấp hoạt động (biểu thức).You give the function a value (argument) and then provide the operation (expression).