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

Python - Bộ lọc bộ lọc với tất cả các phần tử giống nhau

Khi cần lọc ra tuple có chứa các phần tử giống nhau, bạn có thể sử dụng khả năng hiểu danh sách và toán tử ‘set’ và các phương thức ‘len’.

Ví dụ

Dưới đây là một minh chứng về điều tương tự -

my_list = [(31, 54, 45, 11, 99) , (11,11), (45, 45, 45), (31, 54, 45, 11, 99),(99, 99), (0,0)]

print("The list is : " )
print(my_list)

my_result = [sub_list for sub_list in my_list if len(set(sub_list)) == 1]

print("The resultant list is : ")
print(my_result)

Đầu ra

The list is :
[(31, 54, 45, 11, 99), (11, 11), (45, 45, 45), (31, 54, 45, 11, 99), (99, 99), (0, 0)]
The resultant list is :
[(11, 11), (45, 45, 45), (99, 99), (0, 0)]

Giải thích

  • Một danh sách các bộ được xác định và được hiển thị trên bảng điều khiển.

  • Khả năng hiểu danh sách được sử dụng để lặp lại các phần tử trong danh sách.

  • Một điều kiện được đặt ra để kiểm tra xem độ dài của các phần tử trong danh sách, sau khi áp dụng toán tử "set" cho chúng có bằng 1.

  • Nếu có, nó được lưu trữ trong một danh sách.

  • Danh sách này được gán cho một biến.

  • Nó được hiển thị dưới dạng đầu ra trên bảng điều khiển.