ChainMap简单示例
ChainMap是dict的子类,拥有dict的所有功能, 感觉用它的地方吧???
from collections import ChainMap """
相当于join两个dict的操作 """ # 示例1
dict1 = {"a": 1, "b": 2}
dict2 = {"c": 3, "d": 4} chain_dict = ChainMap(dict1, dict2)
for k, v in chain_dict.items():
print(k, v) '''
打印结果:
c 3
d 4
a 1
b 2
''' print('-' * 50) # 示例2 dict1 = {"a": 1, "b": 2}
dict2 = {"b": 3, "d": 4} chain_dict = ChainMap(dict1, dict2)
for k, v in chain_dict.items():
print(k, v) '''
打印结果: b只出现了一次,就是首次的值
b 2
d 4
a 1 '''
print('-' * 50)
# 示例3
dict1 = {"a": 1, "b": 2}
dict2 = {"c": 3, "d": 4} chain_dict = ChainMap(dict1, dict2) chain_dict.update({'e': 8}) for k,v in chain_dict.items():
print(k,v) '''
c 3
d 4
a 1
b 2
e 8
''' print('-' * 50)
# 示例4
dict1 = {"a": 1, "b": 2}
dict2 = {"c": 3, "d": 4} chain_dict = ChainMap(dict1, dict2) print(chain_dict) # Remove and return an item pair from maps[0]. Raise KeyError is maps[0] is empty.' 感觉没啥用
item = chain_dict.popitem()
print(item) # ('b', 2) # pop也只能弹出chain_map[0]中的元素,有点鸡
value = chain_dict.pop('a')
print(value) #
print(chain_dict) # ChainMap({}, {'c': 3, 'd': 4}) print('-' * 50)
dict1 = {"a": 1, "b": 2}
dict2 = {"c": 3, "d": 4} chain_dict = ChainMap(dict1, dict2) # new_chain_dict = chain_dict.new_child()
# print(new_chain_dict) # ChainMap({}, {'a': 1, 'b': 2}, {'c': 3, 'd': 4}) , 这有啥用呀 # 在chain_map添加一个新的dict
new_chain_dict = chain_dict.new_child({'name':'admin'})
print(new_chain_dict) # ChainMap({'name': 'admin'}, {'a': 1, 'b': 2}, {'c': 3, 'd': 4})
ChainMap简单示例的更多相关文章
- Linux下的C Socket编程 -- server端的简单示例
		Linux下的C Socket编程(三) server端的简单示例 经过前面的client端的学习,我们已经知道了如何创建socket,所以接下来就是去绑定他到具体的一个端口上面去. 绑定socket ... 
- C# 构建XML(简单示例)
		C# 构建XML的简单示例: var pars = new Dictionary<string, string> { {"url","https://www. ... 
- 根据juery CSS点击一个标签弹出一个遮罩层的简单示例
		<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ... 
- ACEXML解析XML文件——简单示例程序
		掌握了ACMXML库解析XML文件的方法后,下面来实现一个比较完整的程序. 定义基本结构 xml文件格式如下 <?xml version="1.0"?> <roo ... 
- demo工程的清单文件及activity中api代码简单示例
		第一步注册一个账户,并创建一个应用.获取app ID与 app Key. 第二步下载sdk 第三步新建工程,修改清单文件,导入相关的sdk文件及调用相应的api搞定. 3.1 修改清单文件,主要是加入 ... 
- spring-servlet.xml简单示例
		spring-servlet.xml简单示例 某个项目中的spring-servlet.xml 记下来以后研究用 <!-- springMVC简单配置 --> <?xml versi ... 
- SignalR 简单示例
		一.什么是 SignalR ASP.NET SignalR is a library for ASP.NET developers that simplifies the process of add ... 
- Web API 简单示例
		一.RESTful和Web API Representational State Transfer (REST) is a software architecture style consisting ... 
- XML引入多scheme文件约束简单示例
		XML引入多scheme文件约束简单示例,用company.xsd和department.xsd来约束company.xml: company.xsd <?xml version="1 ... 
随机推荐
- Gitblit 添加密钥实现客户端无密码pull、push代码
			之前管理代码用的是SVN,项目需要将管理代码软件切换为Git 折腾了一天,记录下遇到的小坑,方便后来人. 服务端 服务端 的系统是Windows Sever2008 ,首先在服务端安装window版本 ... 
- 用流的方式来操作hdfs上的文件
			import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import ... 
- 用Vue来实现音乐播放器(八):自动轮播图啊
			slider.vue组件的模板部分 <template> <div class="slider" ref="slider"> <d ... 
- 使用Dockerfile封装Django镜像
			第一步: 在/opt下建立了docker目录,下载一个django-2.1.7的源码包, touch Dockerfile和run.sh,其中run.sh是用来执行Django的bash脚本,Dock ... 
- 抓包工具tcpdump用法说明--2
			第一招: 通俗的说,tcpdump是一个抓包工具,用于抓取互联网上传输的数据包.形象的说,tcpdump就好比是国家海关,驻扎在出入境的咽喉要道,凡是要入境和出境的集装箱,海关人员总要打开箱子,看看里 ... 
- excel实现筛选去重操作
			前情提要: 做图表时,希望更新数据后能自动化更新图表,需要各种公式之间相互配合.此时的需求是,将A表中的不同用户登录的地点做一个图表统计. 1.创建透视表 以用户id和地点当做行标签制作透视表,透视表 ... 
- oracle 11g 数据库恢复技术 ---02 控制文件
			oracle 11g 数据库恢复技术 ---02 控制文件 SYS@ orcl >show parameter control_file NAME TYPE VALUE ------------ ... 
- failed to open stream: HTTP request failed! HTTP/1.1 505 HTTP Version Not Supported
			PHP模拟GET请求支付宝退款链接(未用sdk 自己拼接的请求链接与参数); 起初用file_get_contents();就报错 :failed to open stream: HTTP requ ... 
- 应用安全-CMF/CMS漏洞整理
			CMS识别 云悉 http://whatweb.bugscaner.com/batch.html CakePHP CakePHP <= / Cache Corruption Exploit 2 ... 
- python3.5+django2.0快速入门(二)
			昨天写了python3.5+django2.0快速入门(一)今天将讲解配置数据库,创建模型,还有admin的后台管理. 配置数据库 我们打开mysite/mysite/settings.py这个文件. ... 
