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简单的函数定义和用法实例
May 07 Python
Pycharm学习教程(7)虚拟机VM的配置教程
May 04 Python
python决策树之C4.5算法详解
Dec 20 Python
彻底搞懂Python字符编码
Jan 23 Python
Python zip()函数用法实例分析
Mar 17 Python
python实现列表的排序方法分享
Jul 01 Python
pandas删除行删除列增加行增加列的实现
Jul 06 Python
Python3 执行系统命令并获取实时回显功能
Jul 09 Python
在keras中获取某一层上的feature map实例
Jan 24 Python
Python日志logging模块功能与用法详解
Apr 09 Python
Python读写Excel表格的方法
Mar 02 Python
Python中常见的导入方式总结
May 06 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
web server使用php生成web页面的三种方法总结
2013/10/28 PHP
Yii不依赖Model的表单生成器用法实例
2014/12/04 PHP
ThinkPHP的常用配置选项汇总
2016/03/24 PHP
php中mkdir()函数的权限问题分析
2016/09/24 PHP
php过滤输入操作之htmlentities与htmlspecialchars用法分析
2017/02/17 PHP
PHP实现根据数组某个键值大小进行排序的方法
2018/03/13 PHP
centos7上编译安装php7以php-fpm方式连接apache
2018/11/08 PHP
JavaScript对象模型-执行模型
2008/04/28 Javascript
De facto standard 世界上不可思议的事实标准
2010/08/29 Javascript
一个关于javascript匿名函数的问题分析
2012/03/30 Javascript
在html中引入外部js文件,并调用带参函数的方法
2016/10/31 Javascript
文件上传插件SWFUpload的使用指南
2016/11/29 Javascript
Node.js中 __dirname 的使用介绍
2017/06/19 Javascript
vue2.x 父组件监听子组件事件并传回信息的方法
2017/07/17 Javascript
js循环map 获取所有的key和value的实现代码(json)
2018/05/09 Javascript
jquery简单实现纵向的无缝滚动代码实例
2019/04/01 jQuery
原生js代码能实现call和bind吗
2019/07/31 Javascript
浅析vue-router中params和query的区别
2019/12/24 Javascript
JS实现纵向轮播图(初级版)
2020/01/18 Javascript
[00:32]2018DOTA2亚洲邀请赛VG出场
2018/04/03 DOTA
Python的加密模块md5、sha、crypt使用实例
2014/09/28 Python
Python中的MongoDB基本操作:连接、查询实例
2015/02/13 Python
python框架django基础指南
2016/09/08 Python
用python找出那些被“标记”的照片
2017/04/20 Python
python打包exe开机自动启动的实例(windows)
2019/06/28 Python
解决Keras中循环使用K.ctc_decode内存不释放的问题
2020/06/29 Python
Pytest测试框架基本使用方法详解
2020/11/25 Python
Python self用法详解
2020/11/28 Python
python des,aes,rsa加解密的实现
2021/01/16 Python
Sixt美国租车:高端豪华车型自驾体验
2017/09/02 全球购物
科颜氏英国官网:Kiehl’s英国
2019/11/20 全球购物
2014年综治宣传月活动总结
2014/04/28 职场文书
爱祖国爱家乡演讲稿
2014/09/02 职场文书
刑事辩护授权委托书范本
2014/10/17 职场文书
详解Python flask的前后端交互
2022/03/31 Python
Python 操作pdf pdfplumber读取PDF写入Exce
2022/08/14 Python