首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

每天 3 分钟,小闫带你学 Python(十五)

每日分享

The secret to happiness is freedom. And the secret to freedom is courage.

幸福的秘诀就是自由。 自由的秘诀就是勇气。

小闫语录:

今天分享的句子是古希腊哲学家所说的一句话。只有心灵获得自由,才能真正的感受到幸福。恋爱亦是如此,彼此相处,不是枷锁。

前言

昨天的文章『每天 3 分钟,小闫带你学 Python(十四)』讲解了字典类型,还学习了它的两种取值操作:一种是根据下标进行取值(如果取的值没有,会报错);一种是使用 get 方法进行取值(取值没有不会报错,还可以传入默认值)。

下面开始今天的学习 ~

学习目标

1.熟练掌握字典数据类型的增删改查。

2.熟练操作字典的相关方法。

1.字典的常见操作

1.1 查看元素

查看元素不陌生,是上节内容。『前言』部分也做了回顾,此处直接上代码再次帮助大家回顾:

代码语言:javascript
复制
>>> info = {"name": "EthanYan", "age": 18}
# 获取姓名
>>> info["name"]
'EthanYan'
# 获取不存在的 key 出现异常
>>> info["size"]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'size'
# 获取姓名
>>> info.get("name")
'EthanYan'
# 获取不存在的 key 返回默认值
>>> info.get("size", "don't hava this word")
"don't hava this word"

1.2 修改元素

字典中修改元素其实很简单,只需要根据关键字进行取值,然后再重新赋值即可。

代码语言:javascript
复制
>>> info = {"name": "EthanYan", "age": 18}
>>> info["name"]
'EthanYan'
>>> info["name"] = "YanYL"
>>> info["name"]
'YanYL'

由上述例子可以看到,起始关键字 name 的值为 EthanYan。我们修改后再次查看,关键字 name 的值变为了 YanYL

1.3 添加元素

添加元素可以使用方法 update ,先看一段演示代码:

代码语言:javascript
复制
>>> info = {}
>>> info.update({"name": "Ethan"})
>>> info
{'name': 'Ethan'}
>>> info.update({"age": 18})
>>> info
{'name': 'Ethan', 'age': 18}

最初定义一个空字典 info,然后使用 update 方法向空字典中添加键值对,要注意使用字典的形式传值,如 {"name":"Ethan"}

代码语言:javascript
复制
info.update({"name": "Ethan"})

方法 update() ,在括号中填入数据的过程,我们称为传值。

有人会想:又让我记忆这些方法,头都大了!那好,我们还有简单的方法,下面进行演示:

代码语言:javascript
复制
>>> info = {}
>>> info["name"] = "EthanYan"
>>> info
{'name': 'EthanYan'}
>>> info["age"] = 18
>>> info
{'name': 'EthanYan', 'age': 18}

如果在使用 变量名['键']=数据 修改数据时,这个“键”在字典中不存在,那么就会新增此键值对。

这样就不需要记忆多于的方法啦 ~

1.4 删除元素

1.4.1 del

使用 del 可以删除指定的键值对 ,原理便是先由关键字进行取值,然后删除。

代码语言:javascript
复制
>>> info
{'name': 'EthanYan', 'age': 18}
>>> del info["name"]
>>> info
{'age': 18}

首先看到字典 info 中有两个键值对,然后我们删除 name 的键值对。再次进行查看,发现只剩下了 age 键值对,方法得到验证。

1.4.2 clear

使用 clear 方法可以清空整个字典。话不多说,直接上示例:

代码语言:javascript
复制
>>> info = {"name": "EthanYan", "age": 18}
>>> info.clear()
>>> info
{}

在使用方法 clear 后,发现字典 info 变为空字典,得到验证。

2. 字典的相关方法

2.1 len

len 方法在前面文章中有所涉及,可以简单的理解为它会计算操作对象中元素的个数。在字典中,它计算的是键值对的个数

代码语言:javascript
复制
>>> info = {"name": "EthanYan", "age": 18}
>>> len(info)
2

看到 info 中有两个键值对,那么结果返回 2

2.2 keys

此方法会返回字典中所有的键

代码语言:javascript
复制
>>> info = {"name": "EthanYan", "age": 18}
>>> info.keys()
dict_keys(['name', 'age'])

可以看到返回了字典中所有的键 ['name','age']。也许有人会有疑问,前面的 dict_keys() 是什么鬼,你现在只需要了解它是一个数据类型,类型为 dict_keys,如同类型字典或者类型列表一样。

2.3 values

如同 keys 方法, values 方法返回的是字典中所有的值。示例如下:

代码语言:javascript
复制
>>> info = {"name": "EthanYan", "age": 18}
>>> info.values()
dict_values(['EthanYan', 18])

可以看到返回了字典 info 中所有值 ['EthanYan',18]

2.4 items

items 返回的是所有键值对,每个键值对以元组的形式呈现。示例:

代码语言:javascript
复制
>>> info = {"name": "EthanYan", "age": 18}
>>> info.items()
dict_items([('name', 'EthanYan'), ('age', 18)])

可以看到返回了一个这样的列表:

代码语言:javascript
复制
[('name', 'EthanYan'), ('age', 18)]

列表中每个元组之间使用逗号隔开,每个键值对组成一个元组,键值对之间不再使用冒号连接,而是逗号。

3. 作业

1.练习本节内容中的示例代码,可以根据新的需求快速找到对应方法。

2.自己提问,自己写代码解答,要求使用到今天所学全部方法。

下一篇
举报
领券