计算Python列表中的唯一值

时间:2015-11-01 01:19:08

标签: python list

我有以下代码我一直在努力,但我似乎无法找到一种方法来计算anagram列表中唯一值的数量。如果我打印出来:print len(anagram)我得到列表的总值,但它包含重复项。

我试图将列表转换为一个集合并返回以删除重复项,但没有任何运气。

谢谢!

#import libraries 
import urllib, itertools

#import dictionary
scrabble = urllib.urlopen('http://www.puzzlers.org/pub/wordlists/ospd.txt').read().split()
#print the length of the dictionary
print len(scrabble)

#make anagrams from scrabble list
anagrams = [list(g) for k,g in itertools.groupby(sorted(scrabble, key=sorted), key=sorted)]


#print the largest anagram  
print "Largest number of anagrams for a word : ", len(max(anagrams, key=len)) 
print "Largest anagram word and values ", max(anagrams, key=len)

1 个答案:

答案 0 :(得分:1)

使用setset只保留唯一值:

print len(set(anagram))