我有几个字典文件,我希望这段代码打开每个文件并将其添加到一个集合中,以便以后进行比较和匹配。基本上我有所有可能字符的所有排列的不同列表,我需要知道排列是否在字典中。但是当我尝试用所有字典行创建一个集合时,我得到了这个错误:
<button type="button" onclick="changeLights()">Change Lights</button>
我收到此错误
choices = ['s','m','o','k','e','j','a','c','k']
def parsed(choices):
mySet = {}
for item in choices:
filename = self.location + "/dicts/%s.txt" % (item)
mySet.update(open(filename).read().splitlines())
return mySet
此外,我想询问在不到1分钟内运行的两组数据(9个字符排列和9个字典文件列表)之间是否存在可能的比较方法。
我理解已经有关于此错误的问题,但坦率地说,我是初学者,我不明白这些与我的代码有什么关系,或者如何修复它。
答案 0 :(得分:3)
如果你写:
mySet = {}
mySet
不是set
,而是字典(是的,这令人困惑)。例如:
>>> type({})
<class 'dict'>
为了构造一个空集,你应该使用:
mySet = set()
set
确实有一个函数update
,它将一个可迭代的元素作为输入,这些元素都被添加到集合中。另一方面,字典需要可迭代的元组(或字典等)