说我有一个词典列表.它们在每行中大多数具有相同的键,但有一些不匹配并且具有额外的键/值对.有没有快速的方法来获取所有行中的所有键的集合?
现在我正在使用这个循环:
def get_all_keys(dictlist):
keys = set()
for row in dictlist:
keys = keys.union(row.keys())
Run Code Online (Sandbox Code Playgroud)
在具有数十万行的列表上执行此操作似乎非常低效,但我不确定如何更好地执行此操作
谢谢!
我正在尝试在列表列表中获取项目数,并将这些计数添加到Python中的字典中.我已经成功制作了列表(它是各个广告查看记录的所有可能组合的列表)和一个字符,其中键的大小等于可能出现的所有值,现在我需要计算每次出现和更改的次数字典中的值与列表列表中相应键的计数.这就是我所拥有的:
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
viewers=((1,3,4),(1,2,4),(1,4),(1,2),(1,4))
recs=list()
h=1
while h<=len(viewers):
j=1
while j<=len(viewers[h-1]):
recs.append(list(itertools.combinations(viewers[h-1],j)))
j=j+1
h=h+1
showcount={}
for list in combs:
for item in list:
showcount[item]=0
for k, v in showcount:
for item in recs:
for item in item:
if item == k:
v = v+1
Run Code Online (Sandbox Code Playgroud)
我已经尝试了很多不同的方法来做到这一点,而且我通常会得到"太多的值来解压"错误,或者它根本就没有填充.发布了几个类似的问题,但我对Python很新,并且没有一个真正解决了我需要的东西,足以让我弄明白.非常感谢.