python 数据类型_字典和集合

1. 字典

在 Python 中,字典(Dictionary)是一种可变的、无序的、键值对(key-value)集合类型,它可以存储不同类型的数据。字典中的每个元素都有一个唯一的键(key)和相应的值(value)组成。可以使用大括号将键值对包裹起来,多个键值对之间用逗号隔开。例如:

# 创建一个字典

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

# 输出字典

print(my_dict)

# 访问字典中的元素

print(my_dict['name'])

# 更新字典中的元素

my_dict['age'] = 21

print(my_dict)

在上面的例子中,我们创建了一个字典,其中包含三个键值对,分别是 name、age 和 gender。我们可以通过键名来访问和更新字典中的元素。

1.1 字典的常用操作

在 Python 中,字典是一种非常常用的数据类型,经常用于存储一些需要快速查找的数据。下面是一些常用的字典操作。

1.1.1 获取字典中的元素

我们可以通过键名来访问字典中的元素。

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

# 访问字典中的元素

print(my_dict['name'])

输出结果为:

Alice

如果访问的键不存在,则会抛出异常。

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

# 访问不存在的键,会抛出 KeyError 异常

my_dict['email']

输出结果为:

KeyError: 'email'

我们可以使用 get() 方法来获取字典中的元素。如果键不存在,返回指定值(默认为 None)。

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

# 获取字典中的元素

print(my_dict.get('name'))

# 获取不存在的键时,返回 None

print(my_dict.get('email'))

# 获取不存在的键时,返回指定值

print(my_dict.get('email', 'unknown'))

输出结果为:

Alice

None

unknown

1.1.2 修改字典中的元素

我们可以通过键名来修改字典中的元素。

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

# 修改字典中的元素

my_dict['age'] = 21

print(my_dict)

输出结果为:

{'name': 'Alice', 'age': 21, 'gender': 'female'}

1.1.3 添加字典中的元素

我们可以通过键名来添加字典中的元素。

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

# 添加字典中的元素

my_dict['email'] = 'alice@example.com'

print(my_dict)

输出结果为:

{'name': 'Alice', 'age': 20, 'gender': 'female', 'email': 'alice@example.com'}

1.1.4 删除字典中的元素

我们可以通过键名来删除字典中的元素。

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

# 删除字典中的元素

del my_dict['age']

print(my_dict)

输出结果为:

{'name': 'Alice', 'gender': 'female'}

我们也可以使用 pop() 方法来删除字典中的元素。该方法会返回被删除的元素的值。

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

# 删除字典中的元素

value = my_dict.pop('age')

print(my_dict)

print(value)

输出结果为:

{'name': 'Alice', 'gender': 'female'}

20

1.1.5 获取字典中的键、值、键值对

我们可以使用 keys() 方法来获取字典中所有的键。

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

# 获取字典中的所有键

keys = my_dict.keys()

print(keys)

输出结果为:

dict_keys(['name', 'age', 'gender'])

我们也可以使用 values() 方法来获取字典中所有的值。

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

# 获取字典中的所有值

values = my_dict.values()

print(values)

输出结果为:

dict_values(['Alice', 20, 'female'])

我们还可以使用 items() 方法来获取字典中所有的键值对。

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

# 获取字典中所有的键值对

items = my_dict.items()

print(items)

输出结果为:

dict_items([('name', 'Alice'), ('age', 20), ('gender', 'female')])

2. 集合

在 Python 中,集合(Set)是一种可变的、无序的、元素不重复的数据类型。可以使用大括号将元素包裹起来,多个元素之间用逗号隔开。例如:

# 创建一个集合

my_set = {1, 2, 3, 4, 5}

# 输出集合

print(my_set)

输出结果为:

{1, 2, 3, 4, 5}

2.1 集合的常用操作

在 Python 中,集合是一种非常常用的数据类型,它经常用于去重、交集、并集、差集等操作。下面是一些常用的集合操作。

2.1.1 创建集合

我们可以使用大括号或 set() 函数来创建一个集合。

my_set = {1, 2, 3, 4, 5} # 使用大括号创建集合

print(my_set)

my_set = set([1, 2, 3, 4, 5]) # 使用 set() 函数创建集合

print(my_set)

输出结果为:

{1, 2, 3, 4, 5}

{1, 2, 3, 4, 5}

2.1.2 添加元素

我们可以使用 add() 方法来向集合中添加一个元素。

my_set = {1, 2, 3, 4, 5}

# 向集合中添加一个元素

my_set.add(6)

print(my_set)

输出结果为:

{1, 2, 3, 4, 5, 6}

我们也可以使用 update() 方法来向集合中添加多个元素。

my_set = {1, 2, 3, 4, 5}

# 向集合中添加多个元素

my_set.update([6, 7, 8])

print(my_set)

输出结果为:

{1, 2, 3, 4, 5, 6, 7, 8}

2.1.3 删除元素

我们可以使用 remove() 方法来删除集合中的一个元素。

my_set = {1, 2, 3, 4, 5}

# 删除集合中的一个元素

my_set.remove(3)

print(my_set)

输出结果为:

{1, 2, 4, 5}

如果要删除的元素不存在,会抛出 KeyError 异常。

my_set = {1, 2, 3, 4, 5}

# 删除不存在的元素,会抛出 KeyError 异常

my_set.remove(6)

输出结果为:

KeyError: 6

我们可以使用 discard() 方法来删除集合中的一个元素。与 remove() 不同的是,如果要删除的元素不存在,不会抛出异常。

my_set = {1, 2, 3, 4, 5}

# 删除集合中的一个元素

my_set.discard(6)

print(my_set)

输出结果为:

{1, 2, 3, 4, 5}

我们也可以使用 pop() 方法来删除集合中的一个元素。由于集合是无序的,因此删除的元素是随机的。

my_set = {1, 2, 3, 4, 5}

# 删除集合中的一个元素

my_set.pop()

print(my_set)

输出结果为:

{2, 3, 4, 5}

2.1.4 计算集合的交集、并集、差集

我们可以使用 intersection() 方法来计算两个集合的交集。

set1 = {1, 2, 3, 4, 5}

set2 = {3, 4, 5, 6, 7}

# 计算两个集合的交集

result = set1.intersection(set2)

print(result)

输出结果为:

{3, 4, 5}

我们也可以使用 union() 方法来计算两个集合的并集。

set1 = {1, 2, 3, 4, 5}

set2 = {3, 4, 5, 6, 7}

# 计算两个集合的并集

result = set1.union(set2)

print(result)

输出结果为:

{1, 2, 3, 4, 5, 6, 7}

我们还可以使用 difference() 方法来计算两个集合的差集。

set1 = {1, 2, 3, 4, 5}

set2 = {3, 4, 5, 6, 7}

# 计算两个集合的差集

result = set1.difference(set2)

print(result)

输出结果为:

{1, 2}

2.1.5 判断元素是否在集合中

我们可以使用 in 和 not in 操作符来判断元素是否在集合中。

my_set = {1, 2, 3, 4, 5}

# 判断元素是否在集合中

print(3 in my_set)

print(6 not in my_set)

输出结果为:

True

True

3. 总结

在本文中,我们学习了 Python 中的字典和集合两种数据类型。字典是一种键值对集合类型,可以存储不同类型的数据,常用于快速查找数据。集合是一种元素不重复的无序集合类型,常用于去重、交集、并集、差集等操作。我们还介绍了字典和集合的常用操作,包括访问、修改、添加、删除、计算交集、并集、差集等操作。

后端开发标签