Hướng dẫn filter numbers from list python - lọc số 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 dữ liệu từ một danh sách?

Chạy bộ lọc nâng cao Chọn một ô trong bảng dữ liệu. Trên tab Dữ liệu của Ribbon, trong nhóm Sắp xếp & Bộ lọc, nhấp vào Advanced, để mở hộp thoại Bộ lọc nâng cao. Để hành động, chọn Lọc Danh sách, tại chỗ. Đối với phạm vi danh sách, chọn bảng dữ liệu. Select a cell in the data table. On the Data tab of the Ribbon, in the Sort & Filter group, click Advanced, to open the Advanced Filter dialog box. For Action, select Filter the list, in-place. For List range, select the data table.

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

Phương thức bộ lọc () lọc trình tự đã cho với sự trợ giúp của hàm kiểm tra từng phần tử trong chuỗi là đúng hay không.Cú pháp: Bộ lọc (hàm, chuỗi) Tham số: Hàm: Hàm kiểm tra xem mỗi phần tử của chuỗi có đúng hay không.filter(function, sequence) Parameters: function: function that tests if each element of a sequence true or not.

Làm thế nào để bạn lọc một danh sách chuỗi trong Python?

Lọc danh sách chuỗi bằng phương thức Filter ().Phương thức Filter () chấp nhận hai tham số.Tham số đầu tiên lấy tên hàm hoặc không có và tham số thứ hai lấy tên của biến danh sách làm giá trị.Phương thức Filter () lưu trữ các dữ liệu đó từ danh sách nếu nó trả về đúng, nếu không, nó sẽ loại bỏ dữ liệu.using filter() method. filter() method accepts two parameters. The first parameter takes a function name or None and the second parameter takes the name of the list variable as values. filter() method stores those data from the list if it returns true, otherwise, it discards the data.

Làm thế nào để bạn loại trừ các mục khỏi danh sách trong Python?

Phương thức Remove () xóa phần tử khớp đầu tiên (được truyền dưới dạng đối số) khỏi danh sách.Phương thức pop () loại bỏ một phần tử tại một chỉ mục nhất định và cũng sẽ trả về mục đã xóa.Bạn cũng có thể sử dụng từ khóa DEL trong Python để xóa một phần tử hoặc lát khỏi danh sách.. The pop() method removes an element at a given index, and will also return the removed item. You can also use the del keyword in Python to remove an element or slice from a list.