Python工程师之Python编程:从入门到实践【2.1】

6.4 嵌套

有时候,需要将一系列字典存储在列表中,或将列表作为值存储在字典中,这称为
嵌套 。你可以在列表中嵌套字典、在字典中嵌套列表甚至在字典中嵌套字典。正如
下面的示例将演示的,嵌套是一项强大的功能。

6.4.1 字典列表

字典alien_0 包含一个外星人的各种信息,但无法存储第二个外星人的信息,更别
说屏幕上全部外星人的信息了。如何管理成群结队的外星人呢?一种办法是创建一
个外星人列表,其中每个外星人都是一个字典,包含有关该外星人的各种信息。例
如,下面的代码创建一个包含三个外星人的列表:
aliens.py
alien_0 = {'color': 'green', 'points': 5}
alien_1 = {'color': 'yellow', 'points': 10}
alien_2 = {'color': 'red', 'points': 15}
❶ aliens = [alien_0, alien_1, alien_2]
for alien in aliens:
print(alien)
首先创建三个字典,其中每个字典都表示一个外星人。然后在❶处将这些字典都存储
到一个名为aliens 的列表中。最后,遍历这个列表,并将每个外星人都打印出
来:
{'color': 'green', 'points': 5}
{'color': 'yellow', 'points': 10}
{'color': 'red', 'points': 15}
更符合现实的情形是,外星人不止三个,且每个外星人都是使用代码自动生成的。
在下面的示例中,使用range() 生成了30个外星人:
# 创建一个用于存储外星人的空列表。
aliens = []
# 创建30个绿色的外星人。
❶ for alien_number in range(30):


new_alien = {'color': 'green', 'points': 5, 'speed': 'slow'}
aliens.append(new_alien)
# 显示前5个外星人。

❹ for alien in aliens[:5]:
print(alien)
print("...")
# 显示创建了多少个外星人。
❺ print(f"Total number of aliens: {len(aliens)}")
在本例中,首先创建一个空列表,用于存储接下来将创建的所有外星人。在❶处,
range() 返回一系列数,其唯一的用途是告诉Python要重复这个循环多少次。每次
执行这个循环时,都创建一个外星人(见❷),并将其附加到列表aliens 末尾
(见❸)。在❹处,使用一个切片来打印前5个外星人。在❺处,打印列表的长度,
以证明确实创建了30个外星人:
{'color': 'green', 'points': 5, 'speed': slow'}
{'color': 'green', 'points': 5, 'speed': slow'}
{'color': 'green', 'points': 5, 'speed':

  • 20
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BinaryStarXin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值