4、Python基础之字典

本文介绍了Python中的字典,包括通过键访问和修改值,使用get()安全访问,添加、删除键值对,遍历字典的键、值和键值对,以及字典的嵌套用法。字典是动态结构,支持键值对的增删改,并提供了遍历和错误处理的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、字典的介绍

二、字典的基本操作

1、访问字典中的值

1.1、通过键获取对应的值

1.2、使用get()来访问值 

2、修改字典

2.1、添加键值对

2.2、 删除键值对 

2.3、修改字典中的值

三、遍历字典

1、遍历所有键值对

2、遍历字典中的所有键

3、遍历字典中的值 

四、字典嵌套

1、在列表中存储字典

2、在字典中存储列表

3、在字典中存储字典


一、字典的介绍

在Python中,字典是一系列键值对(key: value)。每个键都与一个值关联,值的内容可以是数值、字符串、列表乃至字典。字典可以存储一个对象的多种信息,比如单个学生的学籍相关内容;也可以存储多个对象的同一类信息,比如数学老师手中的成绩单。

Python字典用放在大括号{ }中的一系列键值对表示,键和值之间用冒号分隔,而键值对之间用逗号分隔。键值对的数量是任意的。dict = {'key1': 'value1', 'key2': 'value2', ……}

二、字典的基本操作

假设我们有一个存储学生信息的字典:

1、访问字典中的值

1.1、通过键获取对应的值

通过dict['key']的形式来获取对应的value,如图:

需要注意:

1、字典的key和value都不能为空,否则无法正常使用。

2、key可以是空串(可能并没有什么实际意义😜 )。

3、key可以重复,但是在根据key获取value的时候,会产生覆盖,只能输出最后一次访问的键值对

4、value可以是None,且可以被正常获取。

用一张图来说明:

1.2、使用get()来访问值 

通过1.1中的方式来获取值时,在某些场景下可能会引发问题,比如指定的键不存在,这时会产生错误:

这时,我们可以使用get()方法来避免这种错误。get()方法有两个参数位,第一个用于指定键(即key),这是必不可少的;第二个参数为指定的键不存在时要返回的内容,为可选项。如果指定的键不存在,又没有指定第二个参数的内容 ,Python会返回None。

### Python 字典基础知识 #### 什么是字典 字典(dictionary)是Python中非常有用的一个内置数据类型[^2]。它是一个无序的对象集合,其中每个元素由一个键对组成。与列表不同的是,列表是有序的对象集合,并且通过索引来访问元素;而字典则是通过键来存取对应的。 #### 创字典字典的方式有多种: - 使用花括号 `{}` 和冒号 `:` 来定义键对: ```python person = {"name": "Alice", "age": 30} ``` - 使用`dict()` 构造函数: ```python person = dict(name="Bob", age=25) ``` #### 访问字典中的 可以通过指定的键名来获取相应的: ```python print(person["name"]) # 输出 Alice 或 Bob ``` 如果尝试访问不存在的键,则会抛出 KeyError 错误。为了避免这种情况发生,可以使用 get() 方法,在找不到键的情况下返回 None 或者自定义默认: ```python print(person.get('height', 'Not Available')) ``` #### 修改和添加新条目 向现有字典中增加新的键对很简单,只需赋即可: ```python person['city'] = 'Beijing' ``` 更新已有键所关联的数据同样如此操作。 #### 删除字典项 删除单个键对可采用 del 关键字: ```python del person['age'] ``` 清空整个字典则可以用 clear(): ```python person.clear() ``` #### 遍历字典 遍历字典时可以选择只迭代键、只迭代或是同时迭代两者: ```python for key in person.keys(): # 迭代所有的key print(key) for value in person.values(): # 迭代所有的value print(value) for k, v in person.items(): # 同时迭代keys和values print(f"{k}: {v}") ``` #### 字典推导式 类似于列表推导式的语法也可以应用于构字典: ```python squares = {x: x*x for x in range(6)} ``` 以上介绍了关于 Python字典的一些基本概念及其常见的操作方式。掌握这些内容有助于更好地理解和运用这种强大的数据结构。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值