我有一个字典,其中包含如下所示的列表:
['33', '34', '34', '34', '35', '35', '36', '36', '38']
['34', '37', '38']
['33', '33', '35', '35', '38', '38']
我正在尝试自动获取每个列表的唯一值的数量(即第三个列表的值为3)。
我该怎么做?
答案 0 :(得分:5)
print len(set([1,1,2,2,3,3]))
是你在寻找什么?
set
就像列表一样......除了它们只包含唯一元素,它们没有订单
答案 1 :(得分:0)
构建一个集合,然后得到它的长度:
print len(set(yourlist))
答案 2 :(得分:0)
len(set(x))
是集合x
中唯一元素的数量。
那对于那本字典:
d
Out[16]:
{'a': ['33', '34', '34', '34', '35', '35', '36', '36', '38'],
'b': ['34', '37', '38'],
'c': ['33', '33', '35', '35', '38', '38']}
你有
for k,v in d.items():
print('{}: {}'.format(k,len(set(v))))
a: 5
c: 3
b: 3
python 3语法。