Python 字典的values()方法介绍

发布于:2025-02-25 ⋅ 阅读:(14) ⋅ 点赞:(0)

在 Python 中,字典的 values() 方法用于返回字典中所有值(values)的视图对象。这个视图对象是动态的,意味着字典发生变化时,视图对象也会随之更新。

1. 语法

dict.values()

参数: 无
返回值: dict_values 视图对象

2. 示例

# 示例字典
student = {
    "name": "Alice",
    "age": 25,
    "grade": "A"
}

# 使用 values() 方法
values_view = student.values()

# 打印 values 视图
print(values_view)   # dict_values(['Alice', 25, 'A'])

# 将其转为列表
values_list = list(values_view)
print(values_list)   # ['Alice', 25, 'A']

3. 视图对象的特点

3.1. 动态性:
当字典内容变化时,dict_values 视图也会随之更新:
student["age"] = 26
print(values_view)  # dict_values(['Alice', 26, 'A'])
3.2. 不可直接修改:

视图对象本身不支持修改

values_view[0] = "Bob"  # TypeError: 'dict_values' object does not support item assignment
3.3. 可迭代:

dict_values 是可迭代的,可以用于 for 循环:

for value in student.values():
    print(value)

4. 常见用法

4.1. 统计字典中值的数量:
scores = {'Alice': 90, 'Bob': 85, 'Charlie': 90}
print(len(scores.values()))  # 3
4.2. 判断值是否存在:
print(90 in scores.values())  # True
4.3. 求和、最大、最小:
print(sum(scores.values()))  # 265
print(max(scores.values()))  # 90
4.4. 拼接多个列表:
hits = {'file1': [1, 2], 'file2': [3, 4]}
all_hits = sum(hits.values(), [])
print(all_hits)  # [1, 2, 3, 4]

5. 与 keys() 和 items() 的比较

方法 返回类型 内容 是否动态更新
dict.keys() dict_keys 返回字典的所有键
dict.values() dict_values 返回字典的所有值
dict.items() dict_items 返回键值对((key, value) 元组)

6. 关键总结

  • values() 返回字典值的动态视图,类型为 dict_values
  • 可用于迭代、统计、转换为列表、判断成员等操作。
  • 视图不支持直接修改,但随字典变化而变化。