PAP5.1-字典的创建与操作

在线练习 · 人工智能专业 2026级本科《Python人工智能程序设计》

说明

本练习在课堂内完成。请在本机使用 VS Code、Cursor 或 Devin Desktop 编写并运行,再将源代码与终端输出填入各题下方的文本框。

练习一:花括号创建与访问

编写程序,使用花括号创建一名学生的信息字典,并按键读出姓名和年龄。

要求

  • 在程序中写入下面的字典。name 表示姓名,age 表示年龄,grade 表示成绩,city 表示城市。
student = {
    "name": "张三",
    "age": 20,
    "grade": 85,
    "city": "北京"
}
  • 打印 student["name"],输出为 张三。
  • 打印 student["age"],输出为 20。
  • 打印 student,输出为 {'name': '张三', 'age': 20, 'grade': 85, 'city': '北京'}。

练习二:由键值对列表创建

编写程序,将一组键值对列表转换为字典,并打印该字典。

要求

  • 在程序中写入下面的列表。每个元组的第一项是键,第二项是值。
pairs = [("name", "王五"), ("age", 19), ("grade", 88)]
  • 使用 dict(pairs) 创建字典。
  • 打印该字典,输出为 {'name': '王五', 'age': 19, 'grade': 88}。

练习三:字典推导式

编写程序,使用字典推导式生成 1 到 5 的平方,以及三个姓名的长度。

要求

  • 在程序中写入下面的姓名列表。
names = ["Alice", "Bob", "Charlie"]
  • 使用 {x: x**2 for x in range(1, 6)} 生成平方字典,并打印。输出为 {1: 1, 2: 4, 3: 9, 4: 16, 5: 25}。
  • 使用 {name: len(name) for name in names} 生成姓名长度字典,并打印。输出为 {'Alice': 5, 'Bob': 3, 'Charlie': 7}。

练习四:安全访问

编写程序,使用 get() 读取存在的键和不存在的键。键不存在时,程序不报错。

要求

  • 在程序中写入下面的字典。
student = {"name": "张三", "age": 20, "grade": 85}
  • 打印 student.get("name"),输出为 张三。
  • 打印 student.get("height"),输出为 None。
  • 打印 student.get("height", "未知"),输出为 未知。

练习五:修改、批量更新与遍历

编写程序,修改年龄,补充城市和专业,再逐项打印键与值。

要求

  • 在程序中先写入下面的字典。
student = {"name": "张三", "age": 20, "grade": 85}
  • 随后写入下面三行。第一行将年龄修改为 21,第二行增加城市,第三行同时更新成绩并增加专业。
student["age"] = 21
student["city"] = "北京"
student.update({"grade": 90, "major": "智能科学"})
  • 分别打印 "name" in student、"height" in student 和 len(student),三行输出依次为 True、False、5。
  • 使用 for key, value in student.items() 遍历,每行按 f"{key}: {value}" 打印。五行输出依次为:
name: 张三
age: 21
grade: 90
city: 北京
major: 智能科学