Lambda if-else Python

lambda là một hàm python một lớp được sử dụng để nhanh chóng xây dựng một hàm một cách dễ dàng, Trong bài đăng này, chúng ta sẽ xem cách sử dụng if-else hoặc nhiều điều kiện để đánh giá một biểu thức bằng các hàm lambda

Ngoài ra, chúng ta sẽ xem cách lọc danh sách bằng cách áp dụng các điều kiện trong vòng lặp và lọc trong hàm lambda

Lambda if-else & elif với nhiều điều kiện

Chúng ta có thể sử dụng if-else và elif và nhiều điều kiện bằng cách sử dụng hàm lambda trong Python

Hãy lấy một ví dụ để hiểu cách sử dụng các điều kiện trong lambda

Điều kiện

chúng tôi muốn chấm điểm dựa trên điểm đạt được trong một bài kiểm tra, đây là điều kiện để chấm điểm

if grade > 7:
    A+
elif grade >= 5 and grade <= 7:
    A
else grade <5:
    B

Chúng ta có thể viết nhiều điều kiện này trong lambda như hình bên dưới

grade = lambda x: 'A+' if x>7 else 'A' if x>=5 and x<=7 else 'B'

grade(8)
Out: 'A+'

Ngoài ra, chúng ta cũng có thể viết các điều kiện trên bằng lambda như hình bên dưới

lambda x : (false,true)[Condition]

grade = lambda score : ((((('Not sure' , 'B')[score < 5]), 'A')[(score>=5 | score<=7)]), 'A+')[score>7]

grade(8)
Out: 'A+'

Tuyên bố có điều kiện trong Lambda

Chúng tôi cũng có thể đánh giá một tuyên bố là Đúng hay Sai bằng cách sử dụng Lambda

Hãy xác minh xem điều kiện này là Đúng hay Sai

if grade > 7 and grade <=10 or grade <=5:
   print(True)

Sử dụng Lambda

Chúng ta có thể sử dụng toán tử bitwise trong lambda để tạo điều kiện, Ở đây chúng ta muốn xác minh xem điểm có lớn hơn 7 và nhỏ hơn 10 hay không hoặc có nhỏ hơn 5 hay không

grade = lambda x: ((x>7) & (x<=10))| (x<=5)
grade(12)
Out: False

Lambda khác không làm gì cả

Chúng ta cũng có thể chỉ viết câu lệnh if mà không có câu lệnh khác như thế này

Lambda, giống như bất kỳ hàm nào, phải có giá trị trả về. Không có cái khác không hoạt động vì nó không chỉ định cái gì sẽ trả về nếu không x>7

________số 8_______

danh sách bộ lọc lambda với nhiều điều kiện

Lọc danh sách bằng lambda sẽ trả về tất cả các phần tử của danh sách trả về True cho hàm lambda

data = [10, 9, 7, 0]

Các điều kiện được kết hợp bởi

grade = lambda x: 'A+' if x>7 else 'A' if x>=5 and x<=7 else 'B'
5, chúng trả về
grade = lambda x: 'A+' if x>7 else 'A' if x>=5 and x<=7 else 'B'
6 chỉ khi tất cả các điều kiện là
grade = lambda x: 'A+' if x>7 else 'A' if x>=5 and x<=7 else 'B'
6 và nếu chúng được kết hợp bởi
grade = lambda x: 'A+' if x>7 else 'A' if x>=5 and x<=7 else 'B'
8, chúng trả về
grade = lambda x: 'A+' if x>7 else 'A' if x>=5 and x<=7 else 'B'
6 khi điều kiện đầu tiên trong số chúng được đánh giá là
grade = lambda x: 'A+' if x>7 else 'A' if x>=5 and x<=7 else 'B'
6

Chúng ta có thể sử dụng if other trong lambda Python không?

Chúng ta cũng có thể sử dụng if, if-else lồng nhau trong hàm lambda .

Làm cách nào để sử dụng if lồng nhau trong lambda Python?

Bạn có thể lồng if else trong hàm lambda. Sau đây là cú pháp của Hàm Lambda trong Python với if other bên trong if other, nghĩa là nếu khác được lồng vào nhau. giá trị_1 được trả về nếu điều kiện_1 đúng, ngược lại điều kiện_2 được chọn. giá trị_2 được trả về nếu điều kiện_2 đúng, ngược lại giá trị_3 được trả về .

Hàm lambda có thể nhận 2 đối số không?

Hàm lambda có thể nhận bất kỳ số lượng đối số nào, nhưng chỉ có thể có một biểu thức .

Lambda có thể có nhiều câu lệnh Python không?

Bạn thực sự không thể có nhiều câu lệnh , nhưng bạn có thể mô phỏng điều đó bằng cách chuyển lambdas tới lambdas.