Hướng dẫn how do you filter a list in a list python? - làm thế nào để bạn lọc một danh sách trong một python danh sách?

Tóm tắt: Trong hướng dẫn này, bạn sẽ học cách lọc các yếu tố danh sách bằng cách sử dụng chức năng Python filter() tích hợp.: in this tutorial, you’ll learn how to filter list elements by using the built-in Python filter() function.

Giới thiệu về hàm Python Filter ()

Đôi khi, bạn cần lặp lại các yếu tố của một danh sách và chọn một số trong số chúng dựa trên các tiêu chí được chỉ định.

Giả sử rằng bạn có danh sách sau của scores:

scores = [70, 60, 80, 90, 50]

Code language: Python (python)

Để có được tất cả các phần tử từ danh sách scores trong đó mỗi phần tử lớn hơn hoặc bằng 70, bạn sử dụng mã sau:

scores = [70, 60, 80, 90, 50] filtered = [] for score in scores: if score >= 70: filtered.append(score) print(filtered)

Code language: Python (python)

Làm thế nào nó hoạt động.

  • Đầu tiên, xác định một danh sách trống (

    scores = [70, 60, 80, 90, 50] filtered = [] for score in scores: if score >= 70: filtered.append(score) print(filtered)

    Code language: Python (python)
    1) sẽ giữ các yếu tố từ danh sách scores.
  • Thứ hai, lặp lại các yếu tố của danh sách scores. Nếu phần tử lớn hơn hoặc bằng 70, hãy thêm nó vào danh sách

    scores = [70, 60, 80, 90, 50] filtered = [] for score in scores: if score >= 70: filtered.append(score) print(filtered)

    Code language: Python (python)
    1.
  • Thứ ba, hiển thị danh sách

    scores = [70, 60, 80, 90, 50] filtered = [] for score in scores: if score >= 70: filtered.append(score) print(filtered)

    Code language: Python (python)
    1 lên màn hình.

Python có chức năng tích hợp có tên là filter() cho phép bạn lọc danh sách (hoặc một tuple) theo cách đẹp hơn.

Sau đây cho thấy cú pháp của hàm filter():

filter(fn, list)

Code language: Python (python)

Hàm filter() lặp lại các phần tử của

scores = [70, 60, 80, 90, 50] filtered = [] for score in scores: if score >= 70: filtered.append(score) print(filtered)

Code language: Python (python)
9 và áp dụng hàm

filter(fn, list)

Code language: Python (python)
0 cho mỗi phần tử. Nó trả về một trình lặp cho các phần tử trong đó

filter(fn, list)

Code language: Python (python)
0 trả về

filter(fn, list)

Code language: Python (python)
2.

Trên thực tế, bạn có thể chuyển bất kỳ sự khác biệt nào cho đối số thứ hai của hàm filter(), không chỉ là một danh sách.

Sau đây chỉ ra cách sử dụng hàm filter() để trả về danh sách scores trong đó mỗi điểm lớn hơn hoặc bằng 70:

scores = [70, 60, 80, 90, 50] filtered = filter(lambda score: score >= 70, scores) print(list(filtered))

Code language: Python (python)

Output:

[70, 80, 90]

Code language: Python (python)

Vì hàm filter() trả về một trình lặp, bạn có thể sử dụng vòng lặp

filter(fn, list)

Code language: Python (python)
7 để lặp lại nó. Hoặc bạn có thể sử dụng chức năng

filter(fn, list)

Code language: Python (python)
8 để chuyển đổi trình lặp thành danh sách.

Sử dụng hàm Python Filter () để lọc danh sách các bộ dữ liệu ví dụ

Giả sử bạn có danh sách các bộ dữ liệu sau:

countries = [ ['China', 1394015977], ['United States', 329877505], ['India', 1326093247], ['Indonesia', 267026366], ['Bangladesh', 162650853], ['Pakistan', 233500636], ['Nigeria', 214028302], ['Brazil', 21171597], ['Russia', 141722205], ['Mexico', 128649565] ]

Code language: Python (python)

Mỗi yếu tố trong một danh sách là một tuple chứa tên và dân số của đất nước.

Để có được tất cả các quốc gia có dân số lớn hơn 300 triệu, bạn có thể sử dụng chức năng filter() như sau:

countries = [ ['China', 1394015977], ['United States', 329877505], ['India', 1326093247], ['Indonesia', 267026366], ['Bangladesh', 162650853], ['Pakistan', 233500636], ['Nigeria', 214028302], ['Brazil', 21171597], ['Russia', 141722205], ['Mexico', 128649565] ] populated = filter(lambda c: c[1] > 300000000, countries) print(list(populated))

Code language: Python (python)

Output:

[['China', 1394015977], ['India', 1326093247], ['United States', 329877505]]

Code language: Python (python)

Bản tóm tắt

  • Sử dụng hàm Python filter() để lọc danh sách (hoặc một tuple).

Bạn có thấy hướng dẫn này hữu ích không?

Làm thế nào để bạn lọc một danh sách này sang danh sách khác trong Python?

Lọc danh sách Python với bộ lọc () Chức năng (hàm, có thể lặp lại) có chức năng làm đầu vào đảm nhận đối số (phần tử danh sách) và trả về giá trị boolean cho dù phần tử danh sách này có chuyển bộ lọc hay không. Tất cả các phần tử vượt qua bộ lọc được trả về dưới dạng đối tượng mới có thể lặp lại (một đối tượng bộ lọc).filter() The filter(function, iterable) function takes a function as input that takes on argument (a list element) and returns a Boolean value whether this list element should pass the filter. All elements that pass the filter are returned as a new iterable object (a filter object).

Làm cách nào để chọn danh sách từ danh sách trong Python?

Python Chọn từ danh sách.Để chọn các phần tử từ danh sách Python, chúng tôi sẽ sử dụng Dist.Append ().Chúng tôi sẽ tạo một danh sách các chỉ số được truy cập và vòng lặp được sử dụng để lặp lại thông qua danh sách chỉ mục này để truy cập vào phần tử được chỉ định.list. append(). We will create a list of indices to be accessed and the loop is used to iterate through this index list to access the specified element.

Làm thế nào để bạn lọc các yếu tố trong một danh sách?

Làm thế nào để lọc danh sách các yếu tố trong Python..
Đầu tiên, xác định một danh sách trống (được lọc) sẽ giữ các yếu tố từ danh sách điểm số ..
Thứ hai, lặp lại các yếu tố của danh sách điểm số.Nếu phần tử lớn hơn hoặc bằng 70, hãy thêm nó vào danh sách được lọc ..
Thứ ba, hiển thị danh sách được lọc lên màn hình ..

Bạn có thể có một danh sách các danh sách danh sách trong Python không?

Python cung cấp một tùy chọn tạo danh sách trong danh sách.Nếu đặt đơn giản, đó là một danh sách lồng nhau nhưng với một hoặc nhiều danh sách bên trong dưới dạng một yếu tố.Ở đây, [a, b], [c, d] và [e, f] là các danh sách riêng biệt được truyền dưới dạng các yếu tố để tạo một danh sách mới.Đây là danh sách các danh sách.. If put simply, it is a nested list but with one or more lists inside as an element. Here, [a,b], [c,d], and [e,f] are separate lists which are passed as elements to make a new list. This is a list of lists.