我已经在处理以下代码,但是似乎找不到一种方法来计算字谜列表中唯一值的数量。如果我只是打印出: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)
使用set
。set
仅包含唯一值:
print len(set(anagram))
问题内容: 我很好奇将这种数据对象唯一化的有效方法: 对于每个数据对,左边的数字字符串加上右边的类型说明了数据元素的唯一性。返回值应为与testdata相同的列表列表,但仅保留唯一值。 问题答案: 您可以使用一组: 您还可以看到此页面,该页面对各种保留或不保留顺序的方法进行了基准测试。
问题内容: 到目前为止,我的代码是这样的: 我想添加一个代码,该代码可以计算来自模式(此路径中的42个txt文件)中的唯一单词,但我不知道该怎么做。有谁能够帮助我? 问题答案: 在Python中计算对象的最佳方法是使用为此目的而创建的类。它的行为类似于Python字典,但计数时使用起来稍微容易一些。您只需传递对象列表,它就会自动为您计数。 Counter也有一些有用的方法,例如most_commo
问题内容: 我想创建一个(或一组)所有出现在python列表中的唯一值的列表。我有这样的事情: 我想要以下内容: 我知道对于字符串列表,您只能使用set(aList),但是我无法弄清楚如何在列表列表中解决此问题,因为set(aList)会向我显示错误消息 我该如何解决? 问题答案:
问题内容: 这是我的数据 是独特的。我需要显示每张卡的所有详细信息和总时间,例如: 问题答案: SELECT卡号,用户名,表名,总和(小时)从表_1 GROUP BY卡号,用户名,表名开始
问题内容: 我想从以下列表中获取唯一值: 我需要的输出是: 此代码有效: 我应该使用更好的解决方案吗? 问题答案: 首先正确声明你的列表,以逗号分隔。你可以通过将列表转换为一组来获得唯一值。 如果进一步将其用作列表,则应执行以下操作将其转换回列表: 另一种可能(可能更快)的可能性是从头开始使用集合而不是列表。然后你的代码应为: 正如已经指出的那样,集合不保持原始顺序。如果需要,则应查找有序集合实现
问题内容: 我有一个表,其中包含商店中每件商品的单价和其他详细信息。 另一个包含每个订单中包含的项目的详细信息。 现在我要计算 请注意,我希望它成为表本身的一部分,而不是作为其他视图或查询。我怎样才能做到这一点?我为此研究了触发器和其他机制,但是它们是否适用于不同表中的值,尤其是在存在此类约束的情况下? 我尝试过根据另一列计算出的Column进行以下触发吗?: 但这似乎没有用 问题答案: 这是如何