Computer >> Máy Tính >  >> Lập trình >> Python

Các ví dụ về Lambda và bộ lọc trong Python

Trong hướng dẫn này, chúng ta sẽ xem một ví dụ khác về lambda bộ lọc các hàm trong Python . Hãy bắt đầu hướng dẫn bằng cách tìm hiểu về lambda bộ lọc biểu thức và chức năng tương ứng.

Biểu thức lambda

lambda biểu thức được sử dụng để viết các hàm đơn giản một cách đơn giản. Giả sử nếu chúng ta muốn tìm về các số chẵn thì việc viết biểu thức lambda sẽ tiết kiệm thời gian cho chúng ta.

Nếu bạn chưa quen với lambda chuyển đến phần hướng dẫn của điểm hướng dẫn để tìm hiểu chi tiết hơn về nó.

chức năng bộ lọc (func, iter)

bộ lọc (func, iter) nhận hai đối số, một là hàm và một đối số khác là biến iter, và nó trả về đối tượng bộ lọc mà chúng ta có thể chuyển đổi thành một trình lặp. Trình lặp kết quả sẽ chứa tất cả các phần tử được trả về bởi func bằng cách thực hiện một số thao tác đã ghi bên trong hàm.

Nếu bạn không quen với bộ lọc chuyển đến phần hướng dẫn của điểm hướng dẫn để tìm hiểu chi tiết hơn về nó.

Vì vậy, chúng tôi nhận thấy rằng chúng tôi có thể sử dụng các biểu thức lambda bên trong hàm bộ lọc (func, iter). Hãy xem một ví dụ lọc ra các số chẵn từ danh sách.

Xem đầu vào và đầu ra mong đợi.

Input:
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Output:
[2, 4, 6, 8, 10]

Hãy làm theo các bước dưới đây để đạt được kết quả mong muốn.

Thuật toán

1. Initialise the list of numbers.
2. Write a lambda expression which returns even numbers and pass it to filter function along with the iter.
3. Convert the filter object into an iter.
4. Print the result.

Hãy xem mã.

Ví dụ

## initializing the list
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
## writing lambda expression inside the filter function
## every element will be passed to lambda expression and it will return true if it
satisfies the condition which we have written
## filter function function will yield all those returned values and it stores them
in filter object
## when we convert filter object to iter then, it will values which are true
result = filter(lambda x: x % 2 == 0, nums)
## converting and printing the result
print(list(result))

Đầu ra

Nếu bạn chạy chương trình trên, bạn sẽ nhận được kết quả sau.

[2, 4, 6, 8, 10]

Kết luận

Nếu bạn có bất kỳ nghi ngờ nào về hướng dẫn, hãy đề cập đến chúng trong phần bình luận.