Python 字典(dictionary)是一种用于存储键值对的数据结构。它是 Python 中的内置数据类型,实际上是一个可变的、无序的集合。字典在许多场景中非常有用,因为它允许你通过键来快速检索对应的值。字典可以通过大括号 {}
来创建,并且键和值之间使用冒号 :
分隔,键值对之间用逗号 ,
隔开。
创建字典非常简单,你可以直接使用大括号或者 dict()
函数来创建:
# 使用大括号创建字典
person = {
'name': 'Alice',
'age': 30,
'city': 'New York'
}
# 使用 dict() 函数创建字典
person = dict(name='Alice', age=30, city='New York')
字典是可变类型,这意味着我们可以更新它们的内容。更新字典有多种方式,包括添加新键值对、修改已有键对应的值和删除键值对。
如果你需要修改字典中某个键对应的值,可以直接通过赋值的方式实现:
person['age'] = 31 # 修改字典中 'age' 的值
print(person) # {'name': 'Alice', 'age': 31, 'city': 'New York'}
如果你想向字典中添加新的键值对,可以直接通过赋值来实现:
person['email'] = 'alice@example.com' # 添加新的键值对
print(person) # {'name': 'Alice', 'age': 31, 'city': 'New York', 'email': 'alice@example.com'}
update()
方法字典有一个内置的 update()
方法,该方法可以使用另一个字典或可迭代对象来更新当前字典。update()
方法会覆盖已有的键值对,并添加新的键值对(如果存在的话)。
# 使用另一个字典更新
update_info = {'age': 32, 'city': 'Los Angeles', 'phone': '123-456-7890'}
person.update(update_info)
print(person)
# 输出: {'name': 'Alice', 'age': 32, 'city': 'Los Angeles', 'email': 'alice@example.com', 'phone': '123-456-7890'}
# 使用可迭代对象进行更新
person.update([('age', 33), ('nickname', 'Ally')])
print(person)
# 输出: {'name': 'Alice', 'age': 33, 'city': 'Los Angeles', 'email': 'alice@example.com', 'phone': '123-456-7890', 'nickname': 'Ally'}
字典支持删除操作,可以删除不需要的键值对。
del
关键字:del person['email'] # 删除 'email' 键值对
print(person) # {'name': 'Alice', 'age': 33, 'city': 'Los Angeles', 'phone': '123-456-7890', 'nickname': 'Ally'}
pop()
方法:pop()
方法可以删除指定键的键值对,并且返回该键对应的值:
city = person.pop('city') # 删除 'city' 键值对
print(city) # 'Los Angeles'
print(person) # {'name': 'Alice', 'age': 33, 'phone': '123-456-7890', 'nickname': 'Ally'}
popitem()
方法:popitem()
方法从字典中删除*一个键值对,并返回一个 (key, value)
元组。如果字典为空,则它会引发 KeyError
。
last_item = person.popitem()
print(last_item) # ('nickname', 'Ally')
print(person) # {'name': 'Alice', 'age': 33, 'phone': '123-456-7890'}
字典还有一些其他常用的方法和属性:
keys()
:返回字典中的所有键。values()
:返回字典中的所有值。items()
:返回字典中的所有键值对。clear()
:清空字典中的所有键值对。keys = person.keys()
print(keys) # dict_keys(['name', 'age', 'phone'])
values = person.values()
print(values) # dict_values(['Alice', 33, '123-456-7890'])
items = person.items()
print(items) # dict_items([('name', 'Alice'), ('age', 33), ('phone', '123-456-7890')])
person.clear()
print(person) # {}
字典是 Python 中非常重要的一种数据结构,它在数据存储、检索操作中都有着广泛的应用。通过使用字典,我们不仅可以高效地组织和管理数据,还能轻松实现一些复杂的数据操作。希望通过以上的介绍,你对字典的特性、创建、更新、删除等操作有了更深的理解。在以后的实践中,你会发现字典的强大之处,以及它在代码中为你提供的便利。