阅读文本大概需要 5 分钟。
前言
这节课柠檬会给大家介绍一个新的存储形式:字典。如果以前有编程经验的同鞋应该会很快理解字典其实就是以键值对的形式存储数据,但如果没有编程经验的话也不用担心,柠檬会以最通俗的语言给大家讲解字典的含义和用途。
初见字典
我们先来看一个简单的栗子。
字典
输出如下所示:
上面是一个简短的示例,演示了如何使用字典来存储数据。
字典brother_young存储了柠檬的姓名和性别,并用上面的格式将它们打印了出来。
在这里,柠檬想跟大家一起复习一下我们前面的课程,列表是用[]来表示的,元祖是用()来表示的,它是不能修改的列表,最后的字典是用{}来表示的,这三种形式都有各自的特点,千万不能弄混了。
现实中字典的用法
所柠檬觉得《从入门到实践》里面的一个关于字典实际使用的一个栗子能很好的让大家理解在实际中是如何使用字典的。
上面这个外星人的栗子很形象的表达了我们在实际开发游戏的过程中是如何使用字典里面存储的数据的:如果一个外星人被射杀,我们可以获取它的积分然后使用它。其中我们还用到了str()方法将数字转换为字符串。
操作字典
下面柠檬会以代码的形式给大家讲解字典的增删改。
大家可以看到,我们可以很轻松的给原始字典加上一些键 - 值对,在这里柠檬为自己加上了性格和年龄两个属性,并且打印在输出台。
我们还可以很方便的修改字典里的值。
随着时间的流逝,柠檬成熟了一岁,我们就可以把年龄改为24了。
随着时间的流逝,柠檬也不再阳光,柠檬变得很邪恶,那我们就应该将性格这个属性去掉了,如下代码。
遍历字典
Python提供很多种的遍历字典形式,我们先来看一个最简单的栗子。
这里需要注意,即便遍历字典时,键 — 值对的返回顺序也与存储顺序不同。 Python 不关心键 — 值对的存储顺序,而只跟踪键和值之间的关联关系。
Python中也可以只遍历字典中的键或者值,柠檬给出遍历所有键的代码,遍历值的类似,大家可以自己试试。
遍历字典
字典的嵌套
有时候,需要将一系列字典存储在列表中,或将列表作为值存储在字典中,这称为 嵌套 。你可以在列表中嵌套字典、在字典中嵌套列表甚至在字典中嵌套字典。
字典列表
上面柠檬是将多个字典放在了一个列表中,下面演示一下如何将列表放在字典中。
列表放在字典中
其实柠檬举的这个代码栗子也可以比较好形容出在实际中列表存在于字典中的状况,比如我们可以看到,柠檬的性格肯定是不止一个的,柠檬可以既阳光也帅气是吧,你们懂得。
总结
今天我们一起学习了:如何定义字典,以及如何使用存储在字典中的信息;如何访问和修改字典中的元素,以及如何遍历字典中的所有信息;如何遍历字典中所有的键 - 值对、所有的键和所有的值;如何在列表中嵌套字典、在字典中嵌套列表等。
下节课中,柠檬会带大家一起学习如何与机器互动,鸡不鸡冻?咱们下节课见。
柠檬在这里还是多嘴一句,希望大家每天看完文章以后还是多花一分钟看看末尾的回顾,让脑袋里面形成一个回路,对自己的记忆是很有帮助的。
回顾
领取专属 10元无门槛券
私享最新 技术干货