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的正则表达式re模块的常用方法
Mar 09 Python
给Python的Django框架下搭建的BLOG添加RSS功能的教程
Apr 08 Python
python简单的函数定义和用法实例
May 07 Python
python实现简单爬虫功能的示例
Oct 24 Python
对python3 中方法各种参数和返回值详解
Dec 15 Python
使用python对多个txt文件中的数据进行筛选的方法
Jul 10 Python
详解Django 时间与时区设置问题
Jul 23 Python
python框架Django实战商城项目之工程搭建过程图文详解
Mar 09 Python
Python多线程通信queue队列用法实例分析
Mar 24 Python
Python浮点型(float)运算结果不正确的解决方案
Sep 22 Python
python3中celery异步框架简单使用+守护进程方式启动
Jan 20 Python
python游戏开发之pygame实现接球小游戏
Apr 22 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开发过程中关于继承的使用方法分享
2011/06/17 PHP
基于php在各种web服务器的运行模式详解
2013/06/03 PHP
PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
2016/02/23 PHP
golang 调用 php7详解及实例
2017/01/04 PHP
php文件管理基本功能简单操作
2017/01/16 PHP
PHP/HTML混写的四种方式总结
2017/02/27 PHP
php魔法函数与魔法常量使用介绍
2017/07/23 PHP
PHP实现微信小程序人脸识别刷脸登录功能
2018/05/24 PHP
如何在PHP中使用数组
2020/06/09 PHP
IE bug table元素的innerHTML
2010/01/11 Javascript
加速IE的Javascript document输出的方法
2010/12/02 Javascript
js实现向右横向滑出的二级菜单效果
2015/08/27 Javascript
全面解析Bootstrap图片轮播效果
2015/12/03 Javascript
基于jQuery的网页影音播放器jPlayer的基本使用教程
2016/03/08 Javascript
JavaScript“尽快失败”的原则实例详解
2016/10/08 Javascript
Vue.js第四天学习笔记
2016/12/02 Javascript
vue select组件的使用与禁用实现代码
2018/04/10 Javascript
Angular4 Select选择改变事件的方法
2018/10/09 Javascript
超好用的jQuery分页插件jpaginate用法示例【附源码下载】
2018/12/06 jQuery
对于防止按钮重复点击的尝试详解
2019/04/22 Javascript
微信小程序页面间传递数组对象方法解析
2019/11/06 Javascript
初学python数组的处理代码
2011/01/04 Python
剖析Python的Tornado框架中session支持的实现代码
2015/08/21 Python
情人节快乐! python绘制漂亮玫瑰
2020/08/18 Python
Python生成器的使用方法和示例代码
2019/03/04 Python
详解Python 调用C# dll库最简方法
2019/06/20 Python
python实现画出e指数函数的图像
2019/11/21 Python
django框架F&Q 聚合与分组操作示例
2019/12/12 Python
python爬虫开发之selenium模块详细使用方法与实例全解
2020/03/09 Python
英国汽车和货车租赁网站:Hertz英国
2016/09/02 全球购物
DELPHI面试题研发笔试试卷
2015/11/08 面试题
卖房协议书
2014/04/11 职场文书
数学教研活动总结
2014/07/02 职场文书
幼儿园庆六一主持词
2015/06/30 职场文书
2016年教师节特级教师获奖感言
2015/12/09 职场文书
Nginx进程调度问题详解
2021/09/25 Servers