📜  如何计算列表中的唯一值

📅  最后修改于: 2022-05-13 01:55:24.753000             🧑  作者: Mango

如何计算列表中的唯一值

有几种方法可以在Python中查找或计算列表中的唯一项。在这里,我们将讨论 3 种方法。

方法一:

第一种方法是蛮力方法。这种方法效率不高,因为它需要更多的时间和空间。在这种方法中,我们采用一个空数组和一个计数变量(设置为零)。我们从头开始遍历并检查项目。如果该项目不在空列表中(因为它已为空),那么我们会将其添加到空列表中并将计数器增加 1。如果该项目在已获取列表中(空列表),我们将不计算它。

例子:

Python3
# taking an input list
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
 
# taking an input list
l1 = []
 
# taking an counter
count = 0
 
# traversing the array
for item in input_list:
    if item not in l1:
        count += 1
        l1.append(item)
 
# printing the output
print("No of unique items are:", count)


Python3
# importing Counter module
from collections import Counter
 
 
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
 
# creating a list with the keys
items = Counter(input_list).keys()
print("No of unique items in the list are:", len(items))


Python3
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
 
# converting our list to set
new_set = set(input_list)
print("No of unique items in the list are:", len(new_set))


输出:

No of unique items are: 5

方法二:

在这个方法中,我们将使用一个函数名Counter。模块集合具有此函数。使用Counter函数,我们将创建一个字典。字典的将是唯一项,值将是列表中该键的编号。我们将使用键创建一个列表,列表的长度将是我们的答案。

Python3

# importing Counter module
from collections import Counter
 
 
input_list = [1, 2, 2, 5, 8, 4, 4, 8]
 
# creating a list with the keys
items = Counter(input_list).keys()
print("No of unique items in the list are:", len(items))

输出:

No of unique items in the list are: 5

如果我们打印使用 Counter 创建的字典的长度,也会给我们结果。但这种方法更容易理解。

方法三:

在此方法中,我们将列表转换为集合。由于集合不包含任何重复项目,因此打印集合的长度将为我们提供唯一项目的总数。

Python3

input_list = [1, 2, 2, 5, 8, 4, 4, 8]
 
# converting our list to set
new_set = set(input_list)
print("No of unique items in the list are:", len(new_set))

输出:

No of unique items in the list are: 5