Trong bài viết này, chúng ta sẽ tìm hiểu cách đếm các giá trị duy nhất có trong một danh sách trong Python. Chúng tôi sẽ sử dụng một số chức năng tích hợp, cách tiếp cận đơn giản và một số mã tùy chỉnh. Trước tiên chúng ta hãy xem nhanh danh sách trong Python là gì và về các giá trị duy nhất trong danh sách trong bài viết này
Danh sách Python
Python có một kiểu dữ liệu tích hợp được gọi là danh sách. Nó giống như một tập hợp các mảng với các phương pháp khác nhau. Dữ liệu bên trong danh sách có thể thuộc bất kỳ loại nào, chẳng hạn như số nguyên, chuỗi hoặc giá trị float hoặc thậm chí là loại danh sách. Danh sách sử dụng các giá trị được phân tách bằng dấu phẩy trong dấu ngoặc vuông để lưu trữ dữ liệu. Danh sách có thể được xác định bằng cách sử dụng bất kỳ tên biến nào và sau đó gán các giá trị khác nhau cho danh sách trong dấu ngoặc vuông. Danh sách được sắp xếp, có thể thay đổi và cho phép các giá trị trùng lặp
list1 = [‘Ram’,’Arun’,‘Kiran’]
list2 = [16,78,32,67]
list3 = [‘apple’,’mango’,16,’cherry’,3.4]
Một chương trình sẽ yêu cầu người dùng nhập dữ liệu và lưu trữ các giá trị trong một mảng/danh sách. Sau đó, một dòng trống được nhập vào, nó sẽ cho người dùng biết có bao nhiêu giá trị là duy nhất. Chương trình cũng có thể có các yếu tố trùng lặp. Khi chúng tôi đếm độ dài của danh sách, chúng tôi sẽ 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
Tìm các yếu tố độc đáo
Số lượng giá trị duy nhất trong danh sách là số phần tử không bao gồm các giá trị trùng lặp. Ví dụ: số lượng giá trị duy nhất trong [1, 1, 2, 2, 3] là 3
Chúng ta hãy xem các cách dưới đây và giới thiệu các phương pháp khác nhau để đếm các giá trị duy nhất trong danh sách. Bài viết này sử dụng các phương pháp sau
- Cách tiếp cận vũ phu
- Sử dụng mô-đun Bộ sưu tập
- Sử dụng hàm set[]
- Sử dụng chức năng NumPy
Thí dụ. Phương pháp tiếp cận vũ phu để tìm các yếu tố độc đáo
Phương pháp đầu tiên là
#input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
9. Kỹ thuật này không hiệu quả vì nó đòi hỏi đầu tư và không gian. Phương pháp brute force sử dụng một thuật toán đơn giản để đếm các giá trị duy nhất và nó không yêu cầu bất kỳ chức năng nào để tính toán các giá trị duy nhất. Phương thức này lấy một danh sách trống và một biến đếm để đếm các giá trị duy nhất. Chúng tôi điều hướng từ đầu và kiểm tra từng yếu tố. Nếu phần tử đó không có trong danh sách trống, thì chúng ta thêm phần tử đó vào danh sách và tăng bộ đếm lên 1. Trong khi duyệt, nếu phần tử đó có trong danh sách rỗng, chúng ta sẽ không tăng biến đếm và sẽ chuyển sang lần lặp tiếp theoHãy để chúng tôi hiểu điều này với sự trợ giúp của một ví dụ được đưa ra dưới đây
#input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
Số lượng các giá trị duy nhất là. 5
Thí dụ. Sử dụng mô-đun Bộ sưu tập để tìm các phần tử duy nhất
Phương thức này sẽ sử dụng hàm
#input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
0 để đếm các giá trị duy nhất trong danh sách Python đã cho. Trong phương thức này, một hàm có tên là counter[] được nhập từ mô-đun bộ sưu tập#input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
1- Nó là một thư viện chuẩn của Python và nó chứa lớp counter để đếm các mục có thể băm#input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
2- Chức năng bộ đếm được sử dụng để tạo từ điển Bộ đếm là lớp con a#input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
3 để liệt kê các mục có thể băm. Bộ đếm là một bộ sưu tập không có thứ tự trong đó các giá trị được lưu trữ dưới dạng khóa từ điển và giá trị đếm được lưu trữ dưới dạng giá trị từ điển. Nó có hai phương pháp
0 - trả về các giá trị duy nhất trong danh sách#input list input_list = [1, 2, 2, 5, 8, 4, 4, 8] #empty list to store unique values empty_list = [] #counter variable to count unique values count = 0 # travesing the array for ele in input_list: if[ele not in empty_list]: count += 1 empty_list.append[ele] #output print["Count of unique values are:", count]
1- trả về số lượng của mọi giá trị duy nhất trong danh sách#input list input_list = [1, 2, 2, 5, 8, 4, 4, 8] #empty list to store unique values empty_list = [] #counter variable to count unique values count = 0 # travesing the array for ele in input_list: if[ele not in empty_list]: count += 1 empty_list.append[ele] #output print["Count of unique values are:", count]
Sau khi nhập hàm đếm từ các tập hợp, chúng tôi khai báo một danh sách đầu vào. Từ danh sách đầu vào này, chúng tôi tạo một danh sách khác chỉ bao gồm các mục có giá trị chính xuất hiện một lần. Danh sách này là một danh sách riêng biệt của các mặt hàng. Chúng tôi biết bộ đếm in dữ liệu ở dạng từ điển. Vì vậy, các khóa của từ điển sẽ là các mục duy nhất [sử dụng hàm
#input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
2] và các giá trị sẽ là số lượng khóa đó có trong danh sách [sử dụng hàm #input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
3]. Kết quả là, chúng tôi tìm thấy độ dài của danh sách mới này. Chúng tôi sử dụng hàm #input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
4 để lấy số lượng giá trị duy nhất bằng cách chuyển lớp bộ đếm làm đối sốHãy để chúng tôi hiểu điều này với sự trợ giúp của một ví dụ được đưa ra dưới đây
#import Counter
from collections import Counter
#input list
input_list = ['X', 'B', 'G', 'X','G']
#keys of the dictionary will be the unique items
print[Counter[input_list].keys[]]
#values will be the number of that key present in the list
print[Counter[input_list].values[]]
#new list with key-value pairs
print[Counter[input_list]]
#count of unique values
print["Count- ", len[Counter[input_list]]]
dict_keys[['X', 'B', 'G']]
dict_values[[2, 1, 2]]
Bộ đếm . 2, 'B'. 1, 'g'. 2}]
Đếm- 3
Thí dụ. Sử dụng hàm set[] để tìm các phần tử duy nhất
Trong phương pháp này, chúng ta sử dụng hàm
#input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
5 và#input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
4 để tính số mục duy nhất có trong danh sách. Tập hợp là một kiểu dữ liệu khác có sẵn trong Python giống như danh sách. Tập hợp khác với danh sách vì tập hợp là kiểu dữ liệu không có thứ tự trong khi danh sách là kiểu dữ liệu có thứ tự và quan trọng nhất là tập hợp không cho phép các phần tử lặp lại hoặc trùng lặp trong khi danh sách cho phép các phần tử trùng lặp. Chúng ta có thể lấy độ dài của tập hợp để đếm các giá trị duy nhất bằng cách sử dụng hàm len[] trong danh sách sau khi chúng ta chuyển đổi danh sách thành một tập hợp bằng cách sử dụng hàm set[]#input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
0
Đếm-3
Thí dụ. Sử dụng mô-đun NumPy để tìm các phần tử duy nhất
Ví dụ này sử dụng hàm NumPy tích hợp có tên là
#input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
7 để đếm các giá trị duy nhất. Hàm #input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
7 trả về các giá trị duy nhất và lấy dữ liệu dạng mảng làm danh sách đầu vào. Nó cũng trả về số lượng của từng phần tử duy nhất nếu tham số #input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
9 được đặt thành TrueChúng ta hãy xem ví dụ dưới đây để hiểu chức năng này
#input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
4
Các phần tử duy nhất là- [0 2 4 6 7]
Số phần tử duy nhất- 5
Sự kết luận
Trong bài viết này, chúng ta đã học cách đếm các phần tử duy nhất có trong danh sách bằng cách sử dụng một số hàm tích hợp như
#import Counter
from collections import Counter
#input list
input_list = ['X', 'B', 'G', 'X','G']
#keys of the dictionary will be the unique items
print[Counter[input_list].keys[]]
#values will be the number of that key present in the list
print[Counter[input_list].values[]]
#new list with key-value pairs
print[Counter[input_list]]
#count of unique values
print["Count- ", len[Counter[input_list]]]
0, #input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
5, #input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
4, #input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
#empty list to store unique values
empty_list = []
#counter variable to count unique values
count = 0
# travesing the array
for ele in input_list:
if[ele not in empty_list]:
count += 1
empty_list.append[ele]
#output
print["Count of unique values are:", count]
7, v.v. và chúng ta cũng đã sử dụng một số ví dụ tùy chỉnh để hiểu hoạt động của các hàm. Chúng ta đã tìm hiểu về sự khác biệt giữa kiểu dữ liệu tập hợp và kiểu dữ liệu danh sách và cách danh sách được chuyển đổi thành tập hợp bằng cách sử dụng hàm set[]. Chúng ta có thể in số lượng các phần tử duy nhất dưới dạng số nguyên cũng như ở dạng từ điển với các cặp khóa-giá trị như đã thảo luận ở trên trong bài viết