Python 如何确定字典中有多少唯一值?

Python 如何确定字典中有多少唯一值?,python,dictionary,Python,Dictionary,我有一本字典,里面的列表如下: ['33', '34', '34', '34', '35', '35', '36', '36', '38'] ['34', '37', '38'] ['33', '33', '35', '35', '38', '38'] 我正在尝试自动获取每个列表的唯一值的数量(即,第三个列表的值为3) 我该怎么做 print len(set([1,1,2,2,3,3])) 这就是你要找的吗 sets就像列表一样。。。但它们只包含唯一的元素,并且没有顺序 这就是你要找的吗 s

我有一本字典,里面的列表如下:

['33', '34', '34', '34', '35', '35', '36', '36', '38']
['34', '37', '38']
['33', '33', '35', '35', '38', '38']
我正在尝试自动获取每个列表的唯一值的数量(即,第三个列表的值为3)

我该怎么做

print len(set([1,1,2,2,3,3]))
这就是你要找的吗

set
s就像列表一样。。。但它们只包含唯一的元素,并且没有顺序

这就是你要找的吗


set
s就像列表一样。。。除了它们只包含唯一的元素,并且它们没有顺序之外构建一个集合,然后获取其长度:

print len(set(yourlist))

构建一个集合,然后获取其长度:

print len(set(yourlist))
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
Python3语法。

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语法。

是!谢谢你的快速回复。是的!谢谢你的快速回复。