python 如何快速找到多个字典中出现的公共键

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 如何快速找到多个字典中出现的公共键相关的知识,希望对你有一定的参考价值。

from random import randint,sample
s1 = {x: randint(1,4) for x in sample('abcdefg',ranint(3,6))}
s2 = {x: randint(1,4) for x in sample('abcdefg',ranint(3,6))}
s3 = {x: randint(1,4) for x in sample('abcdefg',ranint(3,6))}

# 法一
res = []
for k in s1:
  if k in s2 and s3:
    res.append(k)

# 法二
s1.viewkeys()&s2.viewkeys()&s3.viewkeys()

## 法二进阶版
map(dict.viewkeys,[s1,s2,s3])
>>> [dict_keys(['a','b','e','f']),
    dict_keys(['c','e','g','g']),
     dict_keys(['b','e','d','g','f'])]
reduce(lambda a,b:a &b,map(dict.viewkeys,[s1,s2,s3]))

以上是关于python 如何快速找到多个字典中出现的公共键的主要内容,如果未能解决你的问题,请参考以下文章

如何快速查找到多个字典中的公共键(Key)---Python数据结构与算法相关问题与解决技巧

Python强化训练笔记——找出多个字典中的公共键

如何在字典列表中找到公共键的最小/最大值?

Python中多个词典和列表字典的高效快速数据存储和处理,以及列表的两个词典的交集

经验总结 如何找到多个字典的公共健(key)

Python字典介绍