当前位置:首页 > Python > 正文

Python字典键值对操作完全指南 | Python核心数据结构教程

Python字典键值对操作完全指南

Python字典是Python中最重要的数据结构之一,它存储键值对(key-value pairs),提供高效的数据存储和检索。本教程将详细介绍字典的各种操作,包括创建、访问、修改、遍历以及常用方法。

创建字典

在Python中创建字典有几种常用方法:


# 创建空字典
empty_dict = {}
empty_dict = dict()

# 创建包含键值对的字典
person = {
    "name": "Alice",
    "age": 30,
    "city": "New York"
}

# 使用dict()构造函数
person = dict(name="Alice", age=30, city="New York")

# 从键值对序列创建
person = dict([("name", "Alice"), ("age", 30), ("city", "New York")])
            

访问字典值

使用方括号[]get()方法访问字典中的值:


person = {"name": "Alice", "age": 30, "city": "New York"}

# 使用键访问值
print(person["name"])  # 输出: Alice

# 使用get()方法访问值(避免KeyError)
print(person.get("age"))  # 输出: 30
print(person.get("country", "USA"))  # 输出: USA(默认值)

# 检查键是否存在
if "city" in person:
    print(person["city"])  # 输出: New York
            

修改字典

字典是可变的,可以轻松修改现有值或添加新键值对:


person = {"name": "Alice", "age": 30}

# 修改现有值
person["age"] = 31

# 添加新键值对
person["city"] = "New York"

# 使用update()方法合并字典
person.update({"occupation": "Engineer", "hobby": "Hiking"})
print(person)
# 输出: {'name': 'Alice', 'age': 31, 'city': 'New York', 'occupation': 'Engineer', 'hobby': 'Hiking'}

# 设置默认值
person.setdefault("country", "USA")
            

删除键值对

Python提供了多种删除字典元素的方法:


person = {"name": "Alice", "age": 30, "city": "New York"}

# 使用del删除指定键值对
del person["age"]

# 使用pop()删除并返回值
city = person.pop("city")
print(city)  # 输出: New York

# 使用popitem()删除并返回最后插入的键值对
key, value = person.popitem()

# 清空字典
person.clear()
print(person)  # 输出: {}
            

遍历字典

有多种方法可以遍历字典的键、值和键值对:


person = {"name": "Alice", "age": 30, "city": "New York"}

# 遍历所有键
print("Keys:")
for key in person.keys():
    print(key)

# 遍历所有值
print("\nValues:")
for value in person.values():
    print(value)

# 遍历所有键值对
print("\nItems:")
for key, value in person.items():
    print(f"{key}: {value}")

# 字典推导式
squared_numbers = {x: x**2 for x in range(5)}
print(squared_numbers)  # 输出: {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}
            

常用字典方法

Python字典提供了一系列有用的方法:


person = {"name": "Alice", "age": 30, "city": "New York"}

# 获取所有键
keys = person.keys()

# 获取所有值
values = person.values()

# 获取所有键值对
items = person.items()

# 复制字典
person_copy = person.copy()

# 获取字典长度
print(len(person))  # 输出: 3

# 检查键是否存在
print("name" in person)  # 输出: True
            

字典最佳实践

  • 使用get()方法避免KeyError异常
  • 使用collections.defaultdict处理缺失键
  • 使用字典推导式创建新字典
  • 对字典排序时,使用sorted()函数
  • 合并字典时,Python 3.9+ 可使用|运算符

掌握这些字典操作将大大提高你的Python编程效率!字典是Python中最灵活和强大的数据结构之一,在数据处理、配置管理和算法实现中都有广泛应用。

发表评论