python基础一 ------如何获取多个字典相同的键
需求:
足球赛第一场进去统计  {"A":3,"B":2,"C":1}
足球赛第二场进去统计  {"A":3,"C":1}
足球赛第二场进去统计  {"A":2,"B":2}
统计每场都有进球的人---->找到多个字典的公共建
解决方法:
一:普通方法
二:集合
三:map(),reduce(),当N场比赛时
from random import randint,sample
#先生成随机的字典s1,s2,s3,
#sample从给定的字符串中选取后面给定的数个,组成列表
#sample("ABCFD",3)
#['A','C']
s1 = {k:randint(3,6) for k in sample("ABCDEF",randint(1,5))}
s2 = {k:randint(3,6) for k in sample("ABCDEF",randint(1,5))}
s3 = {k:randint(3,6) for k in sample("ABCDEF",randint(1,5))}
print(s1)
print(s2)
print(s3)
#方法一:
print("-------------------方法一-----------------") coment = []
for i in s1:
if i in s2 and i in s3:
coment.append(i)
print(coment)
print("-------------------方法二-----------------")
#方法二: 将字典转化为集合(python2 dict.viewkeys(),3中 dict.key()),然后取并集
k1 = s1.keys()
k2 = s2.keys()
k3 = s3.keys()
coment = k1&k2&k3
print(coment)
print("-------------------方法三-----------------")
#当N个时
from functools import reduce
x = map(lambda s:s.keys(),[s1,s2,s3])
#reduce 用法,必须接受俩参数进行操作,之后将前面两个参数和从后面的列表中一个一个取出进行之前相同的操作
coment = reduce(lambda x,y:x&y,x)
print(coment)
python基础一 ------如何获取多个字典相同的键的更多相关文章
- Python基础(二) —— 字符串、列表、字典等常用操作
		一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 二.三元运算 result = 值1 if 条件 else 值2 如果条件为真:result = 值1如果条件为 ... 
- python基础3(元祖、字典、深浅copy、集合、文件处理)
		本次内容: 元祖 字典 浅copy和深copy 集合 文件处理 1.1元祖 元祖(tuple)与列表类似,不同之处在于元祖的元素不能修改,元祖使用小括号(),列表使用方括号[].元祖创建很简单,只需要 ... 
- Python基础5:列表 元祖 字典 集合
		[ 列表] 列表(list)是Python以及其他语言中最常用到的数据结构之一.Python使用使用中括号 [ ] 来解析列表. 列表是可变的(mutable)——即:可以改变列表的内容. 相关操作: ... 
- Python 基础【第六篇】字典
		1.字典定义: 字典和列表类似 只是字典标示符用的是字符而列表用的是0开始的数字,字典中每个元素对应一个值 这个元素叫做键(key)键值不能重复 value(值)可以重复 2.字典格式: 格式一: [ ... 
- Python基础-列表、元祖、字典、字符串
		列表和分组 序列概览: 数据结构是通过某种方式组织在一起的数据元素的集合.这些元素可以是数字.字符,甚至可以是其他数据结构. 在python中,最基本的数据结构是序列(sequence). 序列中的每 ... 
- python基础之 列表,元组,字典
		other help(str.strip) #查看是否有返回值以及返回值类型[] :称为索引操作符 1.列表 列表相比字符串来说能存储大量数据的python的基本数据类型,并且也拥有字符串的一些方法( ... 
- Python基础5:列表 元祖 字典 集合 Json
		[ 列表] 列表(list)是Python以及其他语言中最常用到的数据结构之一.Python使用使用中括号 [ ] 来解析列表. 列表是可变的(mutable)——即:可以改变列表的内容. 相关操作: ... 
- Python基础知识-05-数据类型总结字典
		python其他知识目录 1.一道题,选择商品的序号.程序员和用户各自面对的序号起始值 如有变量 googs = ['汽车','飞机','火箭'] 提示用户可供选择的商品: 0,汽车1,飞机2,火箭用 ... 
- python基础知识-列表,元组,字典
		列表(list) 赋值方法: l = [11,45,67,34,89,23] l = list() 列表的方法: #!/usr/bin/env python class list(object): & ... 
随机推荐
- 使用Ultra Librarian将bxl文件转为OrCAD Capture CIS可识别的库文件(OLB)
			操作系统:Windows 10 x64 工具1:Ultra Librarian 8.3.89 工具2:OrCAD Capture CIS 16.6-S062 (v16-6-112FF) 关于Ultra ... 
- shell 判断目录是否存在
			判断/data/www/logs/wos_log/crontab_log是否, 如果不存在则新建 if [ ! -d "/data/www/logs/wos_log/crontab_log& ... 
- C++中的继承(1) 继承方式
			1.继承与派生 继承是使代码可以复用的重要手段,也是面向对象程序设计的核心思想之一.简单的说,继承是指一个对象直接使用另一对象的属性和方法.继承呈现了 面向对象程序设 计的层次结构, 体现了 由简单 ... 
- gitlab原理
			GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务. 其实,说直白点写,他就是个git服务器,和github差不多,只不过,这个gitlab可 ... 
- SQL Server控制执行计划
			为了提高性能,可以使用提示(hints)特性,包含以下三类: 查询提示:(query hints)告知优化器在整个查询过程中都应用某个提示 关联提示:(join hints)告知优化器在查询的特定部分 ... 
- nginx配置http和https共存
			server { listen ; listen ssl; server_name localhost; #ssl on; ssl_certificate /usr/local/Tengine/ssl ... 
- bzoj4520【CQOI2016】K远点对
			题解: kd-tree裸题 对每个点维护最近的k个开个堆维护一下 
- NEST 之旅 · 开启
			NEST 之旅 · 开启 Version:5.x 英文原文地址:Getting started 说实话,这篇文章翻译的很糟糕.但是我的能力有限,目前只有这个水平,还望各位多指导. NEST 是 Ela ... 
- 基于jquery的页面分屏切换模板
			闲来无事,搞了个页面的分屏效果,先来看下效果: 出于可自定义宽高的目的,屏幕分块由CSS控制,由js控制估计等分模块效果一般. 程序相关说明: HTML结构: <div class=" ... 
- 【Android】AndroidManifest 中original-package标签
			Manifest.xml 中 <manifest>标签中package属性用于设置应 用程序的进程名,即在运行时使用ddms查看到的进程名. <original-packag ... 
