python - 字典列表中所有键的联合

标签 python list dictionary

假设我有一个字典列表。它们在每一行中大多具有相同的键,但少数不匹配并且具有额外的键/值对。有没有一种快速的方法来获取一组所有行中的所有键?

现在我正在使用这个循环:

def get_all_keys(dictlist):
    keys = set()
    for row in dictlist:
        keys = keys.union(row.keys())

在具有数十万行的列表上执行此操作似乎非常低效,但我不确定如何做得更好

谢谢!

最佳答案

你可以试试:

def all_keys(dictlist):
    return set().union(*dictlist)

避免导入,并将充分利用 set 的底层实现。也适用于任何可迭代的对象。

关于python - 字典列表中所有键的联合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16902464/

相关文章:

python - 无法在 IntelliJ IDEA 中创建新的 GAE (Python) 项目

python - wx.App 的目的是仅显示一个框架就足够了

python - 在 python 中拆分列表

c++ - 为什么我不能推回列表 C++

python - 字符串索引必须是整数,而不是 str - Python 脚本

python - 将2个不等长的列表映射到字典

python - 在 seaborn 的分类图上使用不规则间隔的非分类轴

python - Django REST 框架 : 'BasePermissionMetaclass' object is not iterable

c++ - 维护一个有序的(通过参数,int)集合

python - 如何在python中引用空字典值