python高效编程技巧5(如何快速找到多个字典中的公共键)

来源:互联网 发布:淘宝美工首页一般多久 编辑:程序博客网 时间:2024/05/16 05:03
#!/usr/bin/env python# -*- coding:utf-8 -*-from random import randint, sample# sample函数的作用,从"abcdefg"中随机取出其中n个data = sample("abcdefg", randint(3, 6))s1 = {x: randint(1, 4) for x in data}s2 = {x: randint(1, 4) for x in data}s3 = {x: randint(1, 4) for x in data}# 解决方案:使用集合(set)的交集操作# 方案1、使用字段的viewkeys()方法,得到一个字典keys的集合s1 = s1.viewkeys()s2 = s2.viewkeys()s3 = s3.viewkeys()print s1 & s2 & s3# 方案2、使用map函数,得到所有字典的keys的集合,使用reduce函数,取所有字典的keys的集合的交集map_list = map(dict.viewkeys, [s1, s2, s3])result = reduce(lambda a, b: a & b, map_list)print result
阅读全文
0 0
原创粉丝点击