详解如何修改python中字典的键和值


Posted in Python onSeptember 29, 2020

我们知道python中字典是无序的,它们都是通过hash去对应的。一般的如果我们需要修改字典的值,只需要直接覆盖即可,而修改字典的键,则需要使用字典自带的pop函数,示例如下:

t = {}
t['a'] = 1
t['b'] = 2
# 修改字典的值
print('未修改前:', t)
t['b'] = 3
print('修改后: ', t)
# 修改字典的键
print('-' * 30)
print('未修改前:', t)
t['c'] = t.pop('a')
print('修改后: ', t)
"""
输出如下:
未修改前: {'a': 1, 'b': 2}
修改后: {'a': 1, 'b': 3}
------------------------------
未修改前: {'a': 1, 'b': 3}
修改后: {'b': 3, 'c': 1}
"""

Python dict字典基本操作(包括添加、修改、删除键值对)

由于字典属于可变序列,所以我们可以任意操作字典中的键值对(key-value 对)。Python 中,常见的字典操作有以下几种:
1.向现有字典中添加新的键值对。
2.修改现有字典中的键值对。
3.从现有字典中删除指定的键值对。
4.判断现有字典中是否存在指定的键值对。

初学者要牢记,字典中常常包含多个键值对,而 key 是字典的关键数据,字典的基本操作都是围绕 key 值实现的。

Python字典添加键值对

如果要为 dict 添加键值对,只需为不存在的 key 赋值即可。实现此操作的语法格式如下:

dict[key] = value

此格式中,各个参数的含义如表 1 所示。

表 1 Python 字典添加键值对语法参数

参数 含义
dict 表示字典名称。
key 表示要添加元素的键。注意,既然是添加新的元素,那么就要保证此元素的键和字典中现有元素的键互不相同。
value 表示要添加数据的值,只要是 Python 支持的数据类型就可以。

例如,下面代码演示了在现有字典 a 的基础上,添加新元素的过程:

a = {'数学':95}
print(a)
#添加新键值对
a['语文'] = 89
print(a)
#再次添加新键值对
a['英语'] = 90
print(a)

运行结果为:

{'数学': 95}
{'数学': 95, '语文': 89}
{'数学': 95, '语文': 89, '英语': 90}

Python字典修改键值对

“修改键值对”并不是同时修改某一键值对的键和值,而只是修改某一键值对中的值。

 由于在字典中,各元素的键必须是唯一的,因此,如果新添加元素的键与已存在元素的键相同,原来键所对应的值就会被新的值替换掉。例如:

a = {'数学': 95, '语文': 89, '英语': 90}
a['语文']=100
print(a)

运行结果为:

{'数学': 95, '语文': 100, '英语': 90}

可以看到,字典中没有再添加一个 {'语文':100} 键值对,而是对原有键值对 {'语文': 89} 中的值做了修改。

Python字典删除键值对

如果要删除字典中的键值对,还是可以使用 del 语句。例如:

# 使用del语句删除键值对
a = {'数学': 95, '语文': 89, '英语': 90}
del a['语文']
del a['数学']
print(a)

运行结果为:

{'英语': 90}

判断字典中是否存在指定键值对

如果要判断字典中是否存在指定键值对,首先应判断字典中是否有对应的键。判断字典是否包含指定键值对的键,可以使用 in 或 not in 运算符。

需要指出的是,对于 dict 而言,in 或 not in 运算符都是基于 key 来判断的。

例如如下代码:

a = {'数学': 95, '语文': 89, '英语': 90}
# 判断 a 中是否包含名为'数学'的key
print('数学' in a) # True
# 判断 a 是否包含名为'物理'的key
print('物理' in a) # False

运行结果为:

True
False

通过 in(或 not in)运算符,我们可以很轻易地判断出现有字典中是否包含某个键,如果存在,由于通过键可以很轻易的获取对应的值,因此很容易就能判断出字典中是否有指定的键值对。

到此这篇关于详解如何修改python中字典的键和值的文章就介绍到这了,更多相关python修改字典键和值内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python socket C/S结构的聊天室应用实现
Nov 30 Python
pygame学习笔记(3):运动速率、时间、事件、文字
Apr 15 Python
python实现雨滴下落到地面效果
Jun 21 Python
Django学习笔记之为Model添加Action
Apr 30 Python
Python 把序列转换为元组的函数tuple方法
Jun 27 Python
简单了解python数组的基本操作
Nov 26 Python
Python3.5 win10环境下导入kera/tensorflow报错的解决方法
Dec 19 Python
Django --Xadmin 判断登录者身份实例
Jul 03 Python
健身房被搭讪?用python写了个小米计时器助人为乐
Jun 08 Python
Python 发送SMTP邮件的简单教程
Jun 24 Python
Python爬虫基础之简单说一下scrapy的框架结构
Jun 26 Python
python疲劳驾驶困倦低头检测功能的实现
Apr 04 Python
提高python代码运行效率的一些建议
Sep 29 #Python
Python爬取微信小程序Charles实现过程图解
Sep 29 #Python
Python Charles抓包配置实现流程图解
Sep 29 #Python
python和node.js生成当前时间戳的示例
Sep 29 #Python
python实现图书馆抢座(自动预约)功能的示例代码
Sep 29 #Python
Python 下载Bing壁纸的示例
Sep 29 #Python
pycharm 2020 1.1的安装流程
Sep 29 #Python
You might like
php addslashes 利用递归实现使用反斜线引用字符串
2013/08/05 PHP
Smarty局部缓存的几种方法简介
2014/06/17 PHP
PHP中is_dir()函数使用指南
2015/05/08 PHP
PHP unlink与rmdir删除目录及目录下所有文件实例代码
2018/02/07 PHP
使用TextRange获取输入框中光标的位
2006/10/14 Javascript
JavaScript脚本性能优化注意事项
2008/11/18 Javascript
处理及遍历XML文档DOM元素属性及方法整理
2013/08/23 Javascript
让网页跳转到指定位置的jquery代码非书签
2013/09/06 Javascript
JS中实现简单Formatter函数示例代码
2014/08/19 Javascript
jquery中页面Ajax方法$.load的功能使用介绍
2014/10/20 Javascript
jQuery替换textarea中换行的方法
2015/06/10 Javascript
jquery实现简易的移动端验证表单
2015/11/08 Javascript
基于JS实现省市联动效果代码分享
2016/06/06 Javascript
jQuery Ajax实现跨域请求
2017/01/21 Javascript
JavaScript实现星星等级评价功能
2017/03/22 Javascript
JS实现图片预加载之无序预加载功能代码
2017/05/12 Javascript
Node.js操作系统OS模块用法分析
2019/01/04 Javascript
JS实现的Object数组去重功能示例【数组成员为Object对象】
2019/02/01 Javascript
[03:09]2014DOTA2国际邀请赛 赛场上的美丽风景线 中国Coser也爱DOTA2
2014/07/20 DOTA
[04:26]2014DOTA2西雅图国际邀请赛 总决赛TOPPLAY
2014/07/22 DOTA
[01:18:35]DOTA2-DPC中国联赛 正赛 Elephant vs LBZS BO3 第一场 1月29日
2021/03/11 DOTA
详解Python中的循环语句的用法
2015/04/09 Python
快速入手Python字符编码
2016/08/03 Python
使用python进行拆分大文件的方法
2018/12/10 Python
OpenCV+Python识别车牌和字符分割的实现
2019/01/31 Python
浅谈Html5中视频 音频标签 进度条的问题
2016/07/26 HTML / CSS
Myprotein蛋白粉美国官网:欧洲畅销运动营养品牌
2016/11/15 全球购物
社团成立邀请函
2014/01/08 职场文书
入党自荐书范文
2014/03/09 职场文书
企业法人授权委托书
2014/04/03 职场文书
教师演讲稿开场白
2014/08/25 职场文书
秋季运动会广播稿(30篇)
2014/09/13 职场文书
党校毕业个人总结
2015/02/28 职场文书
幼儿园园长个人总结
2015/03/02 职场文书
2015年公务员试用期工作总结
2015/05/28 职场文书
ElementUI实现el-form表单重置功能按钮
2021/07/21 Javascript