python基础--字典

1. 什么是字典

在 Python 中,字典(Dictionary)是一种无序、可变、且可以储存任意数量元素的容器类型。每个元素包含一个键(key)和一个值(value)。键必须是唯一的,值可以是任意类型的对象。

字典是一种非常有用的数据结构,通常用于存储键-值对应的数据,例如数据库中的表格,配置文件等等。

# 创建一个空字典

my_dict = {}

# 创建带有键-值对的字典

my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}

# 访问字典中的元素

print(my_dict['name']) # 输出: Alice

# 修改字典中的元素

my_dict['age'] = 26

# 添加新元素

my_dict['address'] = 'Beijing'

2. 字典的常用方法

2.1 get()

get() 方法返回指定键的值,如果值不存在,则返回 None 或指定的默认值。

my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}

print(my_dict.get('name')) # 输出: Alice

print(my_dict.get('address')) # 输出: None

print(my_dict.get('address', 'Not Found')) # 输出: Not Found

当我们在获取字典中不存在的键的值时,使用 get() 方法可以避免程序抛出 KeyError 异常。

2.2 keys() 和 values()

keys() 返回一个由所有键组成的列表。

values() 返回一个由所有值组成的列表。

my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}

print(my_dict.keys()) # 输出: dict_keys(['name', 'age', 'gender'])

print(my_dict.values()) # 输出: dict_values(['Alice', 25, 'female'])

2.3 items()

items() 返回一个由 (键, 值) 组成的元组列表。

my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}

print(my_dict.items()) # 输出: dict_items([('name', 'Alice'), ('age', 25), ('gender', 'female')])

2.4 pop()

pop() 方法从字典中删除指定键的元素,并返回其对应的值。

my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}

value = my_dict.pop('age')

print(my_dict) # 输出: {'name': 'Alice', 'gender': 'female'}

print(value) # 输出: 25

2.5 update()

update() 方法用于将一个字典的键-值对更新到另一个字典中。

my_dict = {'name': 'Alice', 'age': 25}

other_dict = {'gender': 'female', 'address': 'Beijing'}

my_dict.update(other_dict)

print(my_dict) # 输出: {'name': 'Alice', 'age': 25, 'gender': 'female', 'address': 'Beijing'}

3. 字典的遍历

我们可以使用 for 循环遍历字典中的键-值对。

my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}

for key, value in my_dict.items():

print(key, value)

通常情况下,当我们遍历字典时,需要执行一些特定的操作,例如统计出现次数、计算总和等等。

现在我们来写一个简单的例子,统计某个列表中各个元素出现的次数,使用字典来存储统计结果。

fruits = ['apple', 'orange', 'banana', 'apple', 'pear', 'orange', 'apple', 'banana']

fruits_count = {}

for fruit in fruits:

fruits_count[fruit] = fruits_count.get(fruit, 0) + 1

print(fruits_count) # 输出: {'apple': 3, 'orange': 2, 'banana': 2, 'pear': 1}

4. 字典的应用

字典是一种非常灵活的数据结构,通常可以用来存储复杂的数据类型,例如一个用户的信息,一个电话簿等等。

现在我们来看一个实际的应用场景,实现一个电话簿程序。用户输入姓名和电话号码,程序将其添加到电话簿中,并支持查询姓名和修改电话号码等功能。

4.1 添加联系人

phone_book = {}

while True:

name = input('请输入姓名:')

if name == 'quit':

break

phone = input('请输入电话号码:')

phone_book[name] = phone

print(phone_book)

4.2 查询联系人

name = input('请输入要查询的姓名:')

print('电话号码:', phone_book.get(name, '该联系人不存在!'))

4.3 修改联系人电话

name = input('请输入要修改的联系人姓名:')

phone = input('请输入新的电话号码:')

if name in phone_book:

phone_book[name] = phone

print('修改成功!')

else:

print('该联系人不存在!')

通过以上操作,我们成功实现了一个简单的电话簿程序。

5. 总结

本文介绍了 Python 中的字典,包括字典的定义、常用方法、遍历和实际应用场景等方面的内容。

字典是一种非常灵活的数据结构,可以用来存储复杂的数据类型,例如一个用户的信息,一个电话簿等等。

希望对大家理解字典的基本概念和用法有所帮助。

后端开发标签