在Python 字典中一键对应多个值的实例


Posted in Python onFebruary 03, 2019

如下所示:

#encoding=utf-8
 
print '中国'
 
#字典的一键多值
 
print'方案一 list作为dict的值 值允许重复'
 
d1={}
key=1
value=2
d1.setdefault(key,[]).append(value)
value=2
d1.setdefault(key,[]).append(value)
 
print d1
 
#获取值
print '方案一 获取值'
print list(d1[key])
 
print '方案一 删除值,会留下一个空列表'
d1[key].remove(value)
d1[key].remove(value)
print d1
 
print '方案一 检查是否还有一个值'
print d1.get(key,[])
 
print '方案二 使用子字典作为dict的值 值不允许重复'
 
d1={}
key=1
keyin=2
value=11
d1.setdefault(key,{})[keyin]=value
keyin=2
value=22
d1.setdefault(key,{})[keyin]=value
keyin=3
value=33
d1.setdefault(key,{})[keyin]=value
 
print d1
 
print '方案二 获取值'
print list(d1[key])
 
print '方案二 删除值,会留下一个空列表'
del d1[key][keyin]
keyin=2
del d1[key][keyin]
print d1
 
print '方案二 检查是否还有一个值'
print d1.get(key,())
 
print '方案三 使用set作为dict的值 值不允许重复'
d1={}
key=1
value=2
d1.setdefault(key,set()).add(value)
value=2
d1.setdefault(key,set()).add(value)
value=3
d1.setdefault(key,set()).add(value)
 
print d1
 
print '方案三 获取值'
print list(d1[key])
 
print '方案三 删除值,会留下一个空列表'
d1[key].remove(value)
value=2
d1[key].remove(value)
print d1
 
print '方案三 检查是否还有一个值'
print d1.get(key,())

打印结果:

中国

方案一 list作为dict的值 值允许重复

{1: [2, 2]}
获取值
[2, 2]
删除值,会留下一个空列表
{1: []}
检查是否还有一个值
[]

方案二 使用子字典作为dict的值 值不允许重复

{1: {2: 22, 3: 33}}
获取值
[2, 3]
删除值,会留下一个空列表
{1: {}}
检查是否还有一个值
{}

方案三 使用set作为dict的值 值不允许重复

{1: set([2, 3])}
获取值
[2, 3]
删除值,会留下一个空列表
{1: set([])}
检查是否还有一个值
set([])

以上这篇在Python 字典中一键对应多个值的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中使用不同编码读写txt文件详解
May 28 Python
python字符串连接方法分析
Apr 12 Python
python list转矩阵的实例讲解
Aug 04 Python
python mysql断开重连的实现方法
Jul 26 Python
python tkinter控件布局项目实例
Nov 04 Python
关于numpy.where()函数 返回值的解释
Dec 06 Python
tensorflow指定GPU与动态分配GPU memory设置
Feb 03 Python
python中tab键是什么意思
Jun 18 Python
如何解决安装python3.6.1失败
Jul 01 Python
python re模块和正则表达式
Mar 24 Python
python中的被动信息搜集
Apr 29 Python
python 使用tkinter与messagebox写界面和弹窗
Mar 20 Python
Django csrf 两种方法设置form的实例
Feb 03 #Python
解决django前后端分离csrf验证的问题
Feb 03 #Python
Python利用heapq实现一个优先级队列的方法
Feb 03 #Python
对Python3中dict.keys()转换成list类型的方法详解
Feb 03 #Python
对python中字典keys,values,items的使用详解
Feb 03 #Python
python生成带有表格的图片实例
Feb 03 #Python
对python生成业务报表的实例详解
Feb 03 #Python
You might like
BBS(php & mysql)完整版(二)
2006/10/09 PHP
实用函数9
2007/11/08 PHP
解决PHP超大文件下载,断点续传下载的方法详解
2013/06/06 PHP
php创建sprite
2014/02/11 PHP
PHP书写格式详解(必看)
2016/05/23 PHP
PHP手机短信验证码实现流程详解
2018/05/17 PHP
PHP使用PDO实现mysql防注入功能详解
2019/12/20 PHP
JavaScript 学习笔记(五)
2009/12/31 Javascript
Js 获取Gridview选中行的内容操作步骤
2013/02/05 Javascript
Checbox的操作含已选、未选及判断代码
2013/11/07 Javascript
js this函数调用无需再次抓获id,name或标签名
2014/03/03 Javascript
JavaScript自定义数组排序方法
2015/02/12 Javascript
跟我学习javascript的call(),apply(),bind()与回调
2015/11/16 Javascript
javascript html5移动端轻松实现文件上传
2020/03/27 Javascript
JavaScript获取select中text值的方法
2017/02/13 Javascript
vue不通过路由直接获取url中参数的方法示例
2017/08/24 Javascript
基于JavaScript实现前端数据多条件筛选功能
2020/08/19 Javascript
vue中如何动态绑定图片,vue中通过data返回图片路径的方法
2018/02/07 Javascript
vue中keep-alive,include的缓存问题
2019/11/26 Javascript
echarts.js 动态生成多个图表 使用vue封装组件操作
2020/07/19 Javascript
js实现抽奖功能
2020/11/24 Javascript
[38:23]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第一场
2014/05/24 DOTA
[07:52]2014DOTA2 TI逗比武士游V社解说背后的故事
2014/07/10 DOTA
[01:23]2019完美世界全国高校联赛(春季赛)合肥全国总决赛
2019/06/10 DOTA
python使用append合并两个数组的方法
2015/04/28 Python
HTML的form表单和django的form表单
2019/07/25 Python
python取均匀不重复的随机数方式
2019/11/27 Python
python实现简单遗传算法
2020/09/18 Python
video结合canvas实现视频在线截图功能
2018/06/25 HTML / CSS
什么是SCM(软件配置管理)
2014/08/16 面试题
代办委托书怎么写
2014/08/01 职场文书
选择比努力更重要?这是长期以来对“努力”的最大误解
2019/07/12 职场文书
六年级上册《闻官军收河南河北》的教学设计
2019/11/15 职场文书
Python中相见恨晚的技巧
2021/04/13 Python
js 数组 fill() 填充方法
2021/11/02 Javascript
Python使用华为API为图像设置多个锚点标签
2022/04/12 Python