Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python – Lọc các hàng đã sắp xếp


Khi cần lọc các hàng đã được sắp xếp, chúng ta sử dụng list comprehension kết hợp với phương thức sorted() và list().

Ví dụ

my_list = [[99, 6, 75, 10], [1, 75, 2, 4, 99], [75, 15, 99, 2], [1, 4, 15, 99]]
print("Danh sách ban đầu:")
print(my_list)
my_result = [sub for sub in my_list if sub == list(sorted(sub)) or sub == list(sorted(sub, reverse=True))]
print("Danh sách kết quả:")
print(my_result)

Kết quả

Danh sách ban đầu: [[99, 6, 75, 10], [1, 75, 2, 4, 99], [75, 15, 99, 2], [1, 4, 15, 99]]
Danh sách kết quả: [[1, 4, 15, 99]]

Giải thích

  • Định nghĩa một danh sách các danh sách (list of lists) và hiển thị ra màn hình.

  • Sử dụng list comprehension để duyệt qua từng phần tử con (sublist) và kiểm tra xem phần tử đó có bằng với phiên bản đã sắp xếp tăng dần (sorted(sub)) hay giảm dần (sorted(sub, reverse=True)) của chính nó hay không.

  • Nếu thỏa mãn, phần tử đó được giữ lại trong danh sách kết quả.

  • Kết quả được in ra màn hình.