1.什么是multidict词典>

在python中,“ multidict ”一词用于指代字典,在字典中可以将单个键映射到多个值。例如

多重结构

multidictWithList = {

'key1' : [1, 2, 3],

'key2' : [4, 5]

}

multidictWithSet = {

'key1' : {1, 2, 3},

'key2' : {4, 5}

}

1. list如果要保留项目的插入顺序,请使用。

2. set如果要消除重复项(并且不关心顺序),请使用a 。

2. Multidict词典示例

要轻松构建此类词典,可以defaultdict在collections模块中使用。的功能defaultdict是它会自动初始化第一个值,因此您只需关注添加项目即可。

multidict.py

from collections import defaultdict

d1 = defaultdict(list) #list backed multidict

d1['key1'].append(1)

d1['key1'].append(2)

d1['key1'].append(3)

d1['key2'].append(4)

d1['key2'].append(5)

d2 = defaultdict(set) #set backed multidict

d2['key1'].add(1)

d2['key1'].add(2)

d2['key1'].add(3)

d2['key2'].add(4)

d2['key2'].add(5)

>>> d1

defaultdict(<type 'list'>, {'key2': [4, 5], 'key1': [1, 2, 3]})

>>> d1[

(Python基础教程之十六)Python multidict示例–将单个键映射到字典中的多个值的更多相关文章

  1. (Python基础教程之十二)Python读写CSV文件

    Python基础教程 在SublimeEditor中配置Python环境 Python代码中添加注释 Python中的变量的使用 Python中的数据类型 Python中的关键字 Python字符串操 ...

  2. (Python基础教程之十三)Python中使用httplib2 – HTTP GET和POST示例

    Python基础教程 在SublimeEditor中配置Python环境 Python代码中添加注释 Python中的变量的使用 Python中的数据类型 Python中的关键字 Python字符串操 ...

  3. python基础教程(十)

    魔法方法.属性 ------------------------ 准备工作 为了确保类是新型类,应该把 _metaclass_=type 入到你的模块的最开始. class NewType(Objec ...

  4. 《Python基础教程》第六章:抽象(一)

    用def定义函数 __doc__是函数属性.属性名中的双下划线表示它是个特殊属性

  5. Python3基础教程(十六)—— 迭代器、生成器、装饰器

    在这个实验里我们学习迭代器.生成器.装饰器有关知识. 这几个概念是 Python 中不容易理解透彻的概念,务必把所有的实验代码都完整的输入并理解清楚其中每一行的意思. 迭代器 Python 迭代器(I ...

  6. Python核心技术与实战——十六|Python协程

    我们在上一章将生成器的时候最后写了,在Python2中生成器还扮演了一个重要的角色——实现Python的协程.那什么是协程呢? 协程 协程是实现并发编程的一种方式.提到并发,肯很多人都会想到多线程/多 ...

  7. Python基础教程(009)--Python程序的格式以及扩展名

    前言: 熟悉编写第一个Python程序 内容 1,Python源程序是一个特殊的文本文件.可以使用任意文本编辑软件做Python开发 2,Python程序的文件扩展名都是.py 熟悉了解: 看到.py ...

  8. Python基础教程(007)--Python的优缺点

    前言 了解Python的优点和缺点 知识点 优点 简单易学 免费,开源 面相对象 丰富的库 可扩展性 缺点 运行速度慢 国内市场较小 中文资料匮乏 总结: 明白Python的优点和缺点

  9. Python基础教程(006)--Python的特点

    前言 了解Python背景,明白Python在目前社会中的标准库是有成千上万的Python爱好者共同维护的. 知识点 Python是完全面相对象的语言 函数,模块,数字,字符串都是对象,在Python ...

  10. Python基础教程(004)--Python的设计哲学

    前言 Python已经成为了一门流行的编程语言. 知识点 1,优雅 2,明确 3,简单 Python开发者的哲学是:用一种方法,最好是只有一种方法来做一件事. 如果面临多种选择,Python开发者都会 ...

随机推荐

  1. 【Homebrew】之相关命令问题合集及iOS真机调试包

    一.Homebrew更换国内镜像源(中科大.阿里.清华) Homebrew主要有四个部分组成: brew.homebrew-core .homebrew-bottles.homebrew-cask. ...

  2. vue 报错 Component template should contain exactly one root element. If you are using v-if on multiple elements

    vue 报错 Component template should contain exactly one root element. If you are using v-if on multiple ...

  3. 【YashanDB知识库】EXP导致主机卡死问题

    问题现象 问题单:exp导出全库1主2备主节点执行,DMP文件30G左右系统卡死,发生主备切换 现象: exp sys/Cod-2022 file=bim20240402.dmp full=y 服务器 ...

  4. 知识点考古:php5的面向对象学习笔记

    闲来无事翻看以前收藏的资料,考古到保存的这篇文章对php的OOP的整理还很系统.原链接已经打不开(http://www.cublog.cn/u/17686/showart.php?id=146562) ...

  5. 704 二分查找 golang实现

    二分查找(Binary Search)是一种高效的查找算法,适用于 有序数组 或 有序列表.它的基本思想是通过将搜索范围逐渐缩小到目标元素所在的一半,从而大大减少查找的次数. 二分查找的基本原理 排序 ...

  6. QT6框架也能开发Web浏览器应用程序:QT6框架如何编译运行测试WebAssembly应用程序?

    QT6框架也能开发Web浏览器应用程序:QT6框架如何编译运行测试WebAssembly应用程序? 简介 本文将介绍如何使用QT6框架开发Web浏览器应用程序,并介绍具体的编译运行测试WebAssem ...

  7. web架构-nginx负载均衡

    nginx的负载均衡 Nginx 是一个广泛使用的反向代理服务器,能够高效地实现负载均衡.负载均衡的核心作用是将来自客户端的请求分发到多个后端服务器上,从而平衡每台服务器的压力.通过Nginx,我们可 ...

  8. 八字测算api接口数据示例_奥顺八字测算接口分享

    八字测算免费api接口,每日开放时间在早上8点到晚上十点,本api接口完全免费,是奥顺居八字测算网程序内部接口,提供本地调用的,现在免费分享出来,仅供测试. 接口名称:八字精批测算api接口示例 接口 ...

  9. 将nii文件CT图像更改窗宽窗位之后保存成nii文件

    因为项目需要把CT图像中骨头更加明确的显示出来,且还需要保存nii文件,所以查了一些资料,在这里做一下笔记,方便以后使用.代码如下: import nibabel as nib import nump ...

  10. 亿图图示最新版本(Win和Mac)适用的最高45天免费会员,Edrawmax,MindMaster,windows和mac兼用免费会员

    活动随时都在变化,感兴趣的快点去领吧! 亿图图示:https://www.edrawsoft.cn/viral-marketing/Invited.html?s_uid=26349406&pr ...