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解析基于xml格式的日志文件
Feb 25 Python
python下10个简单实例代码
Nov 15 Python
Python使用pylab库实现绘制直方图功能示例
Jun 01 Python
在Python中实现替换字符串中的子串的示例
Oct 31 Python
值得收藏,Python 开发中的高级技巧
Nov 23 Python
python 列表递归求和、计数、求最大元素的实例
Nov 28 Python
python实现公司年会抽奖程序
Jan 22 Python
VPS CENTOS 上配置python,mysql,nginx,uwsgi,django的方法详解
Jul 01 Python
使用Pandas的Series方法绘制图像教程
Dec 04 Python
解决Ubuntu18中的pycharm不能调用tensorflow-gpu的问题
Sep 17 Python
python遍历路径破解表单的示例
Nov 21 Python
Python集合set()使用的方法详解
Mar 18 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
php array_filter除去数组中的空字符元素
2020/06/21 PHP
php生成excel列序号代码实例
2013/12/24 PHP
PHP循环遍历数组的3种方法list()、each()和while总结
2014/11/19 PHP
Web程序工作原理详解
2014/12/25 PHP
php自定义加密与解密程序实例
2014/12/31 PHP
PHP分页初探 一个最简单的PHP分页代码的简单实现
2016/06/21 PHP
记录一次排查PHP脚本执行卡住的问题
2016/12/27 PHP
手把手教你自己写一个js表单验证框架的方法
2010/09/14 Javascript
javascript验证身份证号
2015/03/03 Javascript
jquery 实现输入邮箱时自动补全下拉提示功能
2015/10/04 Javascript
javascript之Array 数组对象详解
2016/06/07 Javascript
微信小程序 实现tabs选项卡效果实例代码
2016/10/31 Javascript
bootstrap学习使用(导航条、下拉菜单、轮播、栅格布局等)
2016/12/01 Javascript
关于Function中的bind()示例详解
2016/12/02 Javascript
在js代码拼接dom对象到页面上去的模板总结(必看)
2017/02/14 Javascript
JS实现的透明度渐变动画效果示例
2018/04/28 Javascript
scrapyd schedule.json setting 传入多个值问题
2019/08/07 Javascript
vant实现购物车功能
2020/06/29 Javascript
跟老齐学Python之Python文档
2014/10/10 Python
python获取元素在数组中索引号的方法
2015/07/15 Python
Python实现的简单dns查询功能示例
2017/05/24 Python
解决python文件字符串转列表时遇到空行的问题
2017/07/09 Python
python连接数据库的方法
2017/10/19 Python
在Pycharm中设置默认自动换行的方法
2019/01/16 Python
python判断文件是否存在,不存在就创建一个的实例
2019/02/18 Python
Django框架会话技术实例分析【Cookie与Session】
2019/05/24 Python
django 2.2和mysql使用的常见问题
2019/07/18 Python
python PIL/cv2/base64相互转换实例
2020/01/09 Python
Python3自定义json逐层解析器代码
2020/05/11 Python
解决margin 外边距合并问题
2019/07/03 HTML / CSS
2013年入党人员的自我鉴定
2013/10/25 职场文书
生日邀请函范文
2014/01/13 职场文书
民间个人借款协议书
2014/09/30 职场文书
年度考核表个人总结
2015/03/06 职场文书
2019年最新证婚词精选集!
2019/06/28 职场文书
最新最全的手机号验证正则表达式
2022/02/24 Javascript