【Python基础】字典

字典(Dictionary)是一种非常强大的数据结构,用于存储键值对(key-value pairs)。字典是无序的、可变的,并且键必须是唯一的。

 1. 字典的基本概念

键值对:字典中的每个元素由一个键(key)和一个值(value)组成,格式为 "key: value"。
键的唯一性:字典中的键必须是唯一的,如果重复,后面的键值对会覆盖前面的。
无序性:字典中的元素是无序的(Python 3.7 及以上版本中,字典会保持插入顺序)。
可变性:字典是可变的,可以动态添加、修改或删除键值对。

 2. 创建字典

方法 1:使用花括号 {}

my_dict = {'name': 'Alice', 'age': 25, 'city': 'New York'}
print(my_dict)  # 输出: {'name': 'Alice', 'age': 25, 'city': 'New York'}

方法 2:使用 dict()构造函数

my_dict = dict(name='Alice', age=25, city='New York')
print(my_dict)  # 输出: {'name': 'Alice', 'age': 25, 'city': 'New York'}

方法 3:从键值对列表创建

my_dict = dict([('name', 'Alice'), ('age', 25), ('city', 'New York')])
print(my_dict)  # 输出: {'name': 'Alice', 'age': 25, 'city': 'New York'}

3. 访问字典中的值

通过键访问:

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

使用 get()`方法:
如果键不存在,get()`会返回 None`或指定的默认值,而不会抛出异常。

print(my_dict.get('name'))  # 输出: Alice
print(my_dict.get('country', 'Unknown'))  # 输出: Unknown(键不存在时返回默认值)

 4. 添加或修改字典中的值

添加或修改:

my_dict['country'] = 'USA'  # 添加新键值对
my_dict['age'] = 26  # 修改已有键的值
print(my_dict)  # 输出: {'name': 'Alice', 'age': 26, 'city': 'New York', 'country': 'USA'}

使用 update()方法:
可以将一个字典的键值对合并到另一个字典中。

my_dict.update({'age': 27, 'gender': 'Female'})
print(my_dict)  # 输出: {'name': 'Alice', 'age': 27, 'city': 'New York', 'country': 'USA', 'gender': 'Female'}

5. 删除字典中的键值对

使用 del语句:

del my_dict['city']
print(my_dict)  # 输出: {'name': 'Alice', 'age': 27, 'country': 'USA', 'gender': 'Female'}

使用pop()方法:
删除指定键并返回其值。

age = my_dict.pop('age')
print(age)  # 输出: 27
print(my_dict)  # 输出: {'name': 'Alice', 'country': 'USA', 'gender': 'Female'}

使用popitem()方法:
删除并返回最后一个插入的键值对。

key, value = my_dict.popitem()
print(key, value)  # 输出: gender Female
print(my_dict)  # 输出: {'name': 'Alice', 'country': 'USA'}

使用 clear()`方法:
清空字典中的所有键值对。

my_dict.clear()
print(my_dict)  # 输出: {}

 6. 遍历字典

遍历键:

for key in my_dict:
    print(key)  # 输出: name, age, city

遍历值:

for value in my_dict.values():
    print(value)  # 输出: Alice, 25, New York

遍历键值对:

for key, value in my_dict.items():
    print(key, value)  # 输出: name Alice, age 25, city New York

7. 字典的常用操作

检查键是否存在:

if 'name' in my_dict:
    print("Name exists")  # 输出: Name exists

获取字典的长度:

print(len(my_dict))  # 输出: 3

复制字典:

new_dict = my_dict.copy()
print(new_dict)  # 输出: {'name': 'Alice', 'age': 25, 'city': 'New York'}

8. 字典推导式

字典推导式是一种快速创建字典的方法,类似于列表推导式。示例:

squares = {x: x**2 for x in range(1, 6)}
print(squares)  # 输出: {1: 1, 2: 4, 3: 9, 4: 16, 5: 25}

9. 嵌套字典

字典可以嵌套使用,即字典的值可以是另一个字典。

示例:

students = {
    'Alice': {'age': 25, 'city': 'New York'},
    'Bob': {'age': 22, 'city': 'Los Angeles'}
}
print(students['Alice']['city'])  # 输出: New York

10. 运用

# ABC代指字典名,A代指字典中存的元素,a代指该元素的释义
ABC = {"A":"a", "B":"b", "C":"c"}
ABC["D"] = "d"
ABC["E"] = "e"
print(ABC)
x = input("请输入您要查找到字母:")
if x in ABC:
    print("您查询的"+ x + "含义如下:")
    print(ABC[x])
else:
    # len(字典名)可以用于计算字典中的元素量
    print("字典中查询不到此字母\n当前字典中共存储"+str(len(ABC))+"条")

11. 总结

字典是一种键值对的数据结构,键必须是唯一的。
字典支持动态添加、修改和删除键值对。
常用的操作包括访问值、遍历、检查键是否存在、复制等。
字典推导式可以快速创建字典。
字典可以嵌套使用,适合存储复杂的数据结构。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值