Python中的无序集合主要有两种类型:集合(Set)和字典(Dictionary)。它们都可以存储多个元素,但是没有固定的顺序。
一、集合(Set)
集合是一组互不相同的元素的无序集合。在Python中,可以使用set()函数或者使用花括号{}来创建集合。
1. 创建集合
可以使用set()函数来创建一个空集合,也可以直接使用花括号{}来创建一个集合,并在花括号内添加元素。
# 创建空集合
set1 = set()
print(set1) # 输出 set()
# 创建带有元素的集合
set2 = {1, 2, 3}
print(set2) # 输出 {1, 2, 3}
2. 添加元素
可以使用add()方法向集合中添加元素,如果添加的元素已经存在于集合中,则不会重复添加。
set3 = {1, 2, 3}
set3.add(4)
print(set3) # 输出 {1, 2, 3, 4}
set3.add(3)
print(set3) # 输出 {1, 2, 3, 4},元素3已经存在,不会重复添加
3. 删除元素
可以使用remove()方法从集合中删除指定的元素,如果要删除的元素不存在于集合中,则会抛出KeyError异常。还可以使用discard()方法删除元素,如果要删除的元素不存在于集合中,则不会抛出异常。
set4 = {1, 2, 3, 4}
set4.remove(3)
print(set4) # 输出 {1, 2, 4}
set4.discard(2)
print(set4) # 输出 {1, 4}
set4.remove(5) # 抛出KeyError异常
set4.discard(5) # 不会抛出异常
4. 集合运算
可以使用交集、并集、差集等运算符对集合进行操作。
set5 = {1, 2, 3}
set6 = {3, 4, 5}
# 交集
intersection = set5 & set6
print(intersection) # 输出 {3}
# 并集
union = set5 | set6
print(union) # 输出 {1, 2, 3, 4, 5}
# 差集
difference = set5 - set6
print(difference) # 输出 {1, 2}
二、字典(Dictionary)
字典是一种键值对的无序集合,每个键值对之间用逗号分隔。在Python中,可以使用花括号{}或者dict()函数来创建字典。
1. 创建字典
可以使用花括号{}来创建一个空字典,也可以使用dict()函数来创建一个字典,并在括号内添加键值对。
# 创建空字典
dict1 = {}
print(dict1) # 输出 {}
# 创建带有键值对的字典
dict2 = {'name': 'Alice', 'age': 20}
print(dict2) # 输出 {'name': 'Alice', 'age': 20}
2. 添加或修改键值对
可以使用赋值运算符来添加或修改字典中的键值对。
dict3 = {'name': 'Alice', 'age': 20}
# 添加键值对
dict3['gender'] = 'female'
print(dict3) # 输出 {'name': 'Alice', 'age': 20, 'gender': 'female'}
# 修改键值对
dict3['age'] = 21
print(dict3) # 输出 {'name': 'Alice', 'age': 21, 'gender': 'female'}
3. 删除键值对
可以使用del关键字来删除字典中的键值对。
dict4 = {'name': 'Alice', 'age': 20, 'gender': 'female'}
del dict4['age']
print(dict4) # 输出 {'name': 'Alice', 'gender': 'female'}
4. 获取键值对
可以使用键来获取对应的值,也可以使用items()方法获取所有的键值对。
dict5 = {'name': 'Alice', 'age': 20}
# 获取值
print(dict5['name']) # 输出 Alice
# 获取所有键值对
print(dict5.items()) # 输出 dict_items([('name', 'Alice'), ('age', 20)])
以上就是Python中无序集合的操作方法。通过集合和字典,可以方便地存储和操作多个元素,并且无序集合的特性可以满足一些特定的需求。希望对你有帮助!
千锋教育拥有多年IT培训服务经验,开设Java培训、web前端培训、大数据培训,python培训、软件测试培训等课程,采用全程面授高品质、高体验教学模式,拥有国内一体化教学管理及学员服务,想获取更多IT技术干货请关注千锋教育IT培训机构官网。