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

由于字典属于可变序列,所以我们可以任意操作字典中的键值对(key-value)。Python 中,常见的字典操作有以下几种:

  • 向现有字典中添加新的键值对。
  • 修改现有字典中的键值对。
  • 从现有字典中删除指定的键值对。
  • 判断现有字典中是否存在指定的键值对。

初学者要牢记,字典是由一个一个的 key-value 构成的,key 是找到数据的关键,Python 对字典的操作都是通过 key 来完成的。

Python字典添加键值对

为字典添加新的键值对很简单,直接给不存在的 key 赋值即可,具体语法格式如下:

dictname[key] = value

对各个部分的说明:

  • dictname 表示字典名称。
  • key 表示新的键。
  • value 表示新的值,只要是 Python 支持的数据类型都可以。

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

  1. a = {'数学':95}
  2. print(a)
  3. #添加新键值对
  4. a['语文'] = 89
  5. print(a)
  6. #再次添加新键值对
  7. a['英语'] = 90
  8. print(a)

运行结果:

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

Python字典修改键值对

Python 字典中键(key)的名字不能被修改,我们只能修改值(value)。

字典中各元素的键必须是唯一的,因此,如果新添加元素的键与已存在元素的键相同,那么键所对应的值就会被新的值替换掉,以此达到修改元素值的目的。请看下面的代码:

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

运行结果:

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

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

Python字典删除键值对

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

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

运行结果为:

{'英语': 90}

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

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

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

例如如下代码:

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

运行结果为:

True
False

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

(0)

相关推荐

  • Python |解决粉丝字典排序问题

    问题描述 解决方案该问题主要是涉及到字典排序,首先要了解字典是由键值对组成,分别由键(姓名)值(分数)组成,该问题就是以值对键值对进行排序:首先要对python中的字典中的键值对进行了解:Dict.i ...

  • 第11天:Python 字典

    Python 中的字典提供了一种灵活的访问和组织数据的方式 字典是由很多值组成的集合 字典的索引可以是不同的数据类型,同样也不止是整数,也有字符串 字典的索引被称为"键",键及键所 ...

  • Python字典的11个方法超级详解

    Python字典是一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. print(dir(dict))['clear', 'copy', 'fromkeys', 'get', ...

  • #PY小贴士# 字典可以通过序号索引来访问?

    我们在学 python 中的 list 和 dict 时知道: list 是有序的,所以可以通过 list_a[0] 这样的方式通过索引(index)来访问列表中某个位置上的元素: dict 是无序的 ...

  • python空字典怎么写

    字典是另外一种可变容器模子,且可存储恣意类型工具. 字典的每一个键值(key=>value)对用冒号(:)宰割,每一个对之间用逗号(,)宰割,整个字典包罗正在花括号({})中 . 格局以下所示: ...

  • python测试开发django-46.xadmin添加action动作

    前言 Action插件在数据列表页面上提供数据选择功能.可以在Action之后专门处理所选数据.批量删除功能作为默认操作提供. action文档 要启用Action,开发人员可以设置Model Opt ...

  • 全新因果推断方法新书, 配套R, Stata和Python的代码, 还包括教授视频和PPT素材!

    邮箱:econometrics666@126.com 所有计量经济圈方法论丛的code程序, 宏微观数据库和各种软件都放在社群里.欢迎到计量经济圈社群交流访问. 前些日,推荐了①重磅! 汉森教授又修订 ...

  • Python中字典和json有什么差异?

    正在学习或者已经学习Python的人应该都知道字典和json,那么你对它们了解多少呢?你知道字典和json区别是什么吗? 什么是字典?是一种数据结构,json是一种数据格式,格式就会有一定形式上限制, ...

  • 苹果cms V10添加修改播放器教程

    登陆苹果cmsv10后台,找到"视频"->"播放器" 如果是新添加播放器,请点击"添加",然后添加你需要的播放器,参考下图 上图内容填 ...

  • python测试开发django-67.templates模板变量取值

    前言 django 的模板里面变量取值是通过句点语法来取值,就是一个点(.)符号.取值的对象也可以是字符串,int类型,list列表,字典键值对,也可以是一个类的实例对象. views视图 比如我在 ...

  • Python|求a + aa + aaa + … + aa…a的值

    问题描述使用函数求和求s= a + aa + aaa + - + aa-a 的值(最后一个数中 a 的个数为 n ),其中 a 是一个1~9的数字.解决方案问题分析示例:输入:a=5 n=5输出:61 ...

  • Python 字典 dict() 函数

    不以物喜不以己悲 生活不会突变,你要做的只是耐心和积累.人这一辈子没法做太多的事情,所以每一件都要做得精彩绝伦.你的时间有限,做喜欢的事情会令人愉悦,所以跟随自己的本心. 目录 描述 语法 返回值 实 ...

  • 说说Python字典以及基本操作?

    公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助! 小猿会从最基础的面试题开始, ...