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

Đếm các phần tử riêng biệt trong một mảng bằng Python

Trong một danh sách bằng Python, chúng ta có thể có các phần tử trùng lặp. Khi chúng ta đếm độ dài của danh sách, chúng ta nhận được tổng độ dài bao gồm các phần tử trùng lặp. Nhưng trong bài viết này, chúng ta sẽ xem cách lấy tổng số phần tử riêng biệt hoặc phần tử duy nhất trong danh sách.

Ví dụ

Trong ví dụ dưới đây, chúng tôi sử dụng bộ đếm () từ mô-đun bộ sưu tập. Trong mô-đun này, Bộ đếm là một lớp con dict để đếm các đối tượng có thể băm. Bộ đếm là một tập hợp không có thứ tự trong đó các phần tử được lưu trữ dưới dạng khóa từ điển và số lượng của chúng được lưu trữ dưới dạng giá trị từ điển. Vì vậy, từ danh sách ban đầu, chúng tôi tạo một danh sách khác chỉ bao gồm các phần tử có giá trị quan trọng hiện diện một lần. Đây là một danh sách riêng biệt của các phần tử. Và sau đó chúng tôi tìm độ dài của danh sách mới này.

from collections import Counter
list = ['Mon', 'Tue', 'Wed', 'Mon','Tue']
print("Length of original list",len(list))

distinct_list= (Counter(list).keys())
print("List with distinct elements:\n",distinct_list)
print("Length of distinct list:",len(distinct_list))

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Length of original list 5
List with distinct elements:
   dict_keys(['Mon', 'Tue', 'Wed'])
Length of distinct list: 3