通过 Jupyter 学习 Python 字典值

使用字典实现数据结构可以帮助您更快地访问信息。
58 位读者喜欢这篇文章。
Hands on a keyboard with a Python book

WOCinTech Chat。由 Opensource.com 修改。CC BY-SA 4.0

字典是 Python 编程语言实现数据结构的方式。Python 字典由多个键值对组成;每个键值对将键映射到其关联的值。

例如,假设您是一位老师,想要将学生的名字与其成绩进行匹配。您可以使用 Python 字典将键(姓名)映射到其关联的值(成绩)。

如果您需要查找特定学生的考试成绩,您可以从字典中访问它。与解析整个列表以查找学生的成绩相比,此查找快捷方式应该可以节省您的时间。

本文向您展示如何通过每个值的键来访问字典值。在开始本教程之前,请确保您的机器上安装了 Anaconda 包管理器Jupyter Notebook

1. 在 Jupyter 中打开一个新的笔记本

首先打开 Jupyter 并在 Web 浏览器中的选项卡中运行它。然后

  1. 转到左上角的文件
  2. 选择新建 Notebook,然后选择 Python 3

您的新笔记本开始时是未命名的,但您可以将其重命名为您喜欢的任何名称。我将我的命名为 OpenSource.com 数据字典教程

您在新的 Jupyter 笔记本中看到的行号是您编写代码的地方。(即,您的输入。)

在 macOS 上,您将按 Shift 键,然后按 Return 键以接收您的输出。请务必在创建新的行号之前执行此操作;否则,您编写的任何其他代码都可能无法运行。

2. 创建键值对

写入您希望在字典中访问的键和值。首先,您需要定义它们在字典上下文中的含义

empty_dictionary = {}
grades = {
    "Kelsey": 87,
    "Finley": 92
}

one_line = {a: 1, b: 2}

这允许字典将特定的键与其各自的值关联起来。字典按名称存储数据,从而实现更快的查找。

3. 通过键访问字典值

假设您想查找特定的字典值;在本例中,是特定学生的成绩。首先,点击插入,然后点击在下方插入单元格

在新的单元格中,定义字典中的键和值。

然后,通过告诉字典打印该值的键来查找您需要的值。例如,查找特定学生的姓名——Kelsey

# Access data in a dictionary
grades = {
    "Kelsey": 87,
    "Finley": 92
}

print(grades["Kelsey"])
87

一旦您请求了 Kelsey 的成绩(即,您尝试查找的值),请按 Shift(如果您使用的是 macOS),然后按 Return

您会在单元格下方的输出中看到您期望的值——Kelsey 的成绩。

4. 更新现有键

如果您意识到您为学生字典添加了错误的成绩怎么办?您可以通过更新字典以存储额外的值来修复它。

首先,选择您要更新的键。在本例中,假设您错误地输入了 Finley 的成绩。那是您将在本示例中更新的键。

要更新 Finley 的成绩,请在下方插入一个新单元格,然后创建一个新的键值对。告诉您的单元格打印字典,然后按 ShiftReturn

grades["Finley"] = 90
print(grades)

{'Kelsey': 87; "Finley": 90}

更新后的字典,包含 Finley 的新成绩,将显示为您的输出。

5. 添加新键

假设您获得了新学生的考试成绩。您可以通过添加新的键值对,将该学生的姓名和成绩添加到您的字典中。

在下方插入一个新单元格,然后将新学生的姓名和成绩添加为键值对。完成后,告诉您的单元格打印字典,然后按 ShiftReturn

grades["Alex"] = 88
print(grades)

{'Kelsey': 87, 'Finley': 90, 'Alex': 88}

所有键值对都应显示为输出。

使用字典

请记住,键和值可以是任何数据类型,但它们很少是非原始类型。此外,字典不会以任何特定顺序存储或结构化其内容。如果您需要项目的有序序列,最好在 Python 中创建一个列表,而不是字典。

如果您正在考虑使用字典,请首先确认您的数据结构是否正确,即像电话簿一样。如果不是,那么使用列表、元组、树或其他数据结构可能是最佳选择。

接下来阅读什么
Photograph of Lauren, a white woman with long brown hair, standing in front of a tree wearing a grey coat.
Lauren Maffeo 曾报道过全球科技行业并在其中工作。她的职业生涯始于伦敦的自由记者,为《卫报》和 The Next Web 报道科技趋势。如今,她在 Steampunk 担任服务设计师,Steampunk 是一家以人为本的设计公司,为政府机构构建公民科技解决方案。

1 条评论

感谢您教给我新的东西。我过去曾使用过 Jupyter 笔记本,并且总是对您可以使用它们做的事情感到惊讶。教授和学习 Python 字典也不容易,这是一个很好的方式来说明它们。

© . All rights reserved.