python 字典操作提取key,value的方法


Posted in Python onJune 26, 2019

python 字典操作提取key,value dictionaryName[key] = value

1.为字典增加一项

python 字典操作提取key,value的方法

2.访问字典中的值

python 字典操作提取key,value的方法

3、删除字典中的一项

python 字典操作提取key,value的方法

4、遍历字典

python 字典操作提取key,value的方法

5、字典遍历的key\value

python 字典操作提取key,value的方法

6、字典的标准操作符

python 字典操作提取key,value的方法

7、判断一个键是否在字典中

python 字典操作提取key,value的方法

8、python中其他的一些字典方法

python 字典操作提取key,value的方法
python 字典操作提取key,value的方法

9、将两个字典合并

a={'a':1,'b':2,'c':3}
b= {'aa':11,'bb':22,'cc':33}
#方法一
print(dict(a,**b))
#方法二 这其实就是在内存中创建两个列表,再创建第三个列表,拷贝完成后,创建新的dict,删除掉前三个列表。这个方法耗费性能,而且对于python3,这个无法成功执行,因为items()返回是个对象。
print(dict(list(a.items())+list(b.items())))
#方法三
c={}
c.update(a)
c.update(b)
print(c)
#方法四 python 3.5支持,可以存在重复键值,比如说:a={'a':1,'b':2,'c':3,'aa':12}会报错TypeError: print() got multiple values for keyword argument 'aa'
print(**a,**b)
 
他们的输出结果都是:
{'bb': 22, 'cc': 33, 'aa': 11, 'a': 1, 'b': 2, 'c': 3}

注意如果存在相同键值,比如说:

a={'a':1,'b':2,'c':3,'aa':12} b= {'aa':11,'bb':22,'cc':33}

那么方法一\二\三得到结果为

{'cc': 33, 'a': 1, 'bb': 22, 'c': 3, 'b': 2, 'aa': 11}

而方法四则会报错:

TypeError: print() got multiple values for keyword argument ‘aa'

10、key和value互换

方法一:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
 
dict_ori = {'A':1, 'B':2, 'C':3}
dict_new = {value:key for key,value in dict_ori.items()}
print(dict_new)

{1: ‘A', 2: ‘B', 3: ‘C'}

方法二:

使用zip方法

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
 
dict_ori = {'A':1, 'B':2, 'C':3}
dict_new2= dict(zip(dict_ori.values(), dict_ori.keys()))
print(dict_new2)

{1: ‘A', 2: ‘B', 3: ‘C'}

11、字典多键值及重复键值的使用方法(详解)

方案一

#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,[]) )

方案一输出结果

中国
方案一 list作为dict的值 值允许重复
{1: [2, 2]}
方案一 获取值
[2, 2]
方案一 删除值,会留下一个空列表
{1: []}
方案一 检查是否还有一个值
[]

方案二

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,()) )

方案二输出结果

方案二 使用子字典作为dict的值 值不允许重复
{1: {2: 22, 3: 33}}
方案二 获取值
[```2, 3]
方案二 删除值,会留下一个空列表
{1: {}}
方案二 检查是否还有一个值
{}

方案三

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 ('方案三 获取值' )
print (list(d1[key]) )
print ('方案三 删除值,会留下一个空列表')
d1[key].remove(value)
value=2
d1[key].remove(value)
print (d1 )
print ('方案三 检查是否还有一个值' )
print (d1.get(key,()) )

输出结果:

方案三 使用set作为dict的值 值不允许重复
{1: {2, 3}}
方案三 获取值
[2, 3]
方案三 删除值,会留下一个空列表
{1: set()}
方案三 检查是否还有一个值
set()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python中使用模块的教程
Apr 27 Python
Python科学计算包numpy用法实例详解
Feb 08 Python
python如何实现一个刷网页小程序
Nov 27 Python
Python3 实现串口两进程同时读写
Jun 12 Python
在Python中使用turtle绘制多个同心圆示例
Nov 23 Python
Python HTTP下载文件并显示下载进度条功能的实现
Apr 02 Python
深入了解Python装饰器的高级用法
Aug 13 Python
Python+pyftpdlib实现局域网文件互传
Aug 24 Python
Python3读写ini配置文件的示例
Nov 06 Python
Python Pandas list列表数据列拆分成多行的方法实现
Dec 14 Python
Python 高级库15 个让新手爱不释手(推荐)
May 15 Python
Python+Tkinter制作专属图形化界面
Apr 01 Python
通过PYTHON来实现图像分割详解
Jun 26 #Python
Flask模板引擎之Jinja2语法介绍
Jun 26 #Python
如何使用Python实现自动化水军评论
Jun 26 #Python
详解用pyecharts Geo实现动态数据热力图城市找不到问题解决
Jun 26 #Python
Python 数据可视化pyecharts的使用详解
Jun 26 #Python
python 实现交换两个列表元素的位置示例
Jun 26 #Python
python之信息加密题目详解
Jun 26 #Python
You might like
3种平台下安装php4经验点滴
2006/10/09 PHP
PHP的加密方式及原理
2012/06/14 PHP
使用PHP实现微信摇一摇周边红包
2016/01/04 PHP
Yii框架分页实现方法详解
2017/05/20 PHP
javascript算法题 求任意一个1-9位不重复的N位数在该组合中的大小排列序号
2012/07/21 Javascript
js实现仿QQ秀换装效果的方法
2015/03/04 Javascript
javascript实现鼠标拖动改变层大小的方法
2015/04/30 Javascript
jquery实现简单合拢与展开网页面板的方法
2015/09/01 Javascript
jQuery实现模拟flash头像裁切上传功能示例
2016/12/11 Javascript
JS简单实现获取元素的封装操作示例
2017/04/07 Javascript
jQuery EasyUI tree增加搜索功能的实现方法
2017/04/27 jQuery
JS实现弹出下载对话框及常见文件类型的下载
2017/07/13 Javascript
深入解析Vue 组件命名那些事
2017/07/18 Javascript
利用JS如何计算字符串所占字节数示例代码
2017/09/13 Javascript
Vue引用第三方datepicker插件无法监听datepicker输入框的值的解决
2018/01/27 Javascript
angularjs中$http异步上传Excel文件方法
2018/02/23 Javascript
微信小程序实现多选框全选与反全选及购物车中删除选中的商品功能
2019/12/17 Javascript
小程序富文本提取图片可放大缩小
2020/05/26 Javascript
JavaScript实现消消乐的源代码
2021/01/12 Javascript
[07:12]2014DOTA2西雅图国际邀请赛 黑马Liquid专题采访
2014/07/12 DOTA
Python使用sftp实现上传和下载功能(实例代码)
2017/03/14 Python
基于python(urlparse)模板的使用方法总结
2017/10/13 Python
python随机生成库faker库api实例详解
2019/11/28 Python
Win10用vscode打开anaconda环境中的python出错问题的解决
2020/05/25 Python
使用phonegap播放音频的实现方法
2017/03/31 HTML / CSS
尽职尽责村干部自我鉴定
2014/01/23 职场文书
化学系大学生自荐信范文
2014/03/01 职场文书
财务科科长岗位职责
2014/03/10 职场文书
百年校庆节目主持词
2014/03/27 职场文书
忠诚奉献演讲稿
2014/09/12 职场文书
2015年教师节感恩寄语
2015/03/23 职场文书
幼儿园老师新年寄语
2015/08/17 职场文书
闭幕词的写作格式与范文!
2019/06/24 职场文书
Python极值整数的边界探讨分析
2021/09/15 Python
关于Python使用turtle库画任意图的问题
2022/04/01 Python
Hive HQL支持2种查询语句风格
2022/06/25 数据库