# 创建相同公共键字典
from random import randint,sample
sample('abcdefg',randint(3,6))
s1 = {k:randint(1,4) for k in sample('abcdefg',randint(3,6)) }
s2 = {k:randint(1,4) for k in sample('abcdefg',randint(3,6)) }
s3 = {k:randint(1,4) for k in sample('abcdefg',randint(3,6)) }
# 提取字典中公共键第一种方法:
for k in s1:
res = []
if k in s2 and k in s3:
res.append(k)
print(res)
# 第二种方法:使用字典的viewkeys()方法得到一个字典keys的集合
s1.viewkeys() & s2.viewkeys() & s3.viewkeys()
# 第三种方法:(1)使使用map函数得到所有字典的keys的集合
map(dict.viewkeys,[s1,s2,s3])
# (2)使用reduce函数,取所有字典keys的集合的交集
reduce(lambda a,b :a & b,map(dict.viewkeys,[s1,s2,s3]))