使用变量名称键将项添加到字典python

Tom*_*omR 0 python dictionary list

我从一个项目列表中列出了n长度的可能组合列表,现在我想创建一个字典,其中每个键是可能组合列表列表中的一个项目,所以我可以开始计算多少次每个组合发生在一组观察中(编程关联规则引擎的早期阶段).这就是我所拥有的:

import itertools
stuff=(1,2,3,4)
n=1
combs=list()
while n<=len(stuff):
    combs.append(list(itertools.combinations(stuff,n)))
    n = n+1
print combs
viewers={'Jim':(1,3,4), 'Bob':(1,2,4), 'Jerry':(1,4), 'Ben':(2), 'Sal':(1,4)}  
showcount={}
for list in combs:
    for item in list:
        showcount["%s",%(item)]=0
print viewers
print showcount
Run Code Online (Sandbox Code Playgroud)

如何让项目显示为字典中的键?"(1,2,4)"似乎是一个关键值对,以便以后可以计数的次数:因此,例如,我想组合"0(1,2,4)".我对Python很陌生,但我确实找到了答案而找不到答案.抱歉,如果这已经得到解答,我就是找不到它.

Mar*_*ers 7

您可以使用元组作为键:

mydict = { (1, 2, 4): 0 }
Run Code Online (Sandbox Code Playgroud)

如果你要计算的东西,看看collections.Counter,它使平凡的计数,无需按键初始化为0:

counts = collections.Counter()
counts[(1, 2, 4)] += 1
Run Code Online (Sandbox Code Playgroud)