第27集:字典常用方法

本集学习目标

  • 掌握字典的keys()、values()、items()方法
  • 学会字典的update()方法
  • 掌握字典的fromkeys()方法
  • 学会字典的setdefault()方法
  • 掌握字典的其他常用方法

常用方法

keys() - 获取所有键

返回字典中所有的

student = {"name": "张三", "age": 18, "city": "北京"}

keys = student.keys()
print(keys)  # dict_keys(['name', 'age', 'city'])

# 转换为列表
keys_list = list(keys)
print(keys_list)  # ['name', 'age', 'city']

values() - 获取所有值

返回字典中所有的

student = {"name": "张三", "age": 18, "city": "北京"}

values = student.values()
print(values)  # dict_values(['张三', 18, '北京'])

# 转换为列表
values_list = list(values)
print(values_list)  # ['张三', 18, '北京']

items() - 获取所有键值对

返回字典中所有的键值对

student = {"name": "张三", "age": 18, "city": "北京"}

items = student.items()
print(items)  # dict_items([('name', '张三'), ('age', 18), ('city', '北京')])

# 转换为列表
items_list = list(items)
print(items_list)

update() - 更新字典

用另一个字典更新当前字典。

dict1 = {"name": "张三", "age": 18}
dict2 = {"age": 19, "city": "北京"}

dict1.update(dict2)
print(dict1)  # {'name': '张三', 'age': 19, 'city': '北京'}

fromkeys() - 创建字典

用给定的键创建字典,所有键的值相同。

keys = ["name", "age", "city"]
value = "未知"

student = dict.fromkeys(keys, value)
print(student)  # {'name': '未知', 'age': '未知', 'city': '未知'}

setdefault() - 获取值或设置默认值

如果键存在,返回对应的值;如果不存在,设置默认值并返回。

student = {"name": "张三", "age": 18}

# 键存在,返回值
name = student.setdefault("name", "李四")
print(name)  # 张三

# 键不存在,设置并返回默认值
city = student.setdefault("city", "北京")
print(city)  # 北京
print(student)  # {'name': '张三', 'age': 18, 'city': '北京'}

get() - 获取值

返回键对应的值,键不存在返回默认值。

student = {"name": "张三", "age": 18}

print(student.get("name"))     # 张三
print(student.get("city"))     # None
print(student.get("city", "未知"))  # 未知

pop() - 删除并返回值

删除指定键并返回对应的值。

student = {"name": "张三", "age": 18, "city": "北京"}

city = student.pop("city")
print(city)      # 北京
print(student)   # {'name': '张三', 'age': 18}

popitem() - 删除并返回最后一个键值对

student = {"name": "张三", "age": 18, "city": "北京"}

item = student.popitem()
print(item)     # ('city', '北京')
print(student)  # {'name': '张三', 'age': 18}

clear() - 清空字典

student = {"name": "张三", "age": 18}

student.clear()
print(student)  # {}

copy() - 复制字典

创建字典的浅拷贝

student1 = {"name": "张三", "age": 18}
student2 = student1.copy()

student2["age"] = 19
print(student1)  # {'name': '张三', 'age': 18}
print(student2)  # {'name': '张三', 'age': 19}

本集小结

  1. **keys()**:获取所有键
  2. **values()**:获取所有值
  3. **items()**:获取所有键值对
  4. **update()**:更新字典
  5. **fromkeys()**:用键创建字典
  6. **setdefault()**:获取值或设置默认值
  7. **get()**:安全获取值
  8. **pop()**:删除并返回值
  9. **clear()**:清空字典
  10. **copy()**:复制字典

课后练习

练习1:获取键和值

获取字典的所有键和值,转换为列表。

练习2:更新字典

使用update()方法更新字典。

练习3:fromkeys()

使用fromkeys()创建所有值为0的字典。

练习4:setdefault()

使用setdefault()确保字典包含特定键。

练习5:综合练习

创建学生字典,使用多种方法操作。

下集预告

下一集我们将学习第28集:集合基础操作。集合是Python中用于存储不重复元素的数据结构。

敬请期待!

« 上一篇 字典基础操作 下一篇 » 集合基础操作