set集合
在 Python 中,集合是一种无序且不重复的集合数据类型。使用 set()
或者 {}(空的花括号)可以创建一个空的集合,使用 {} 加上一些值也可以创建一个非空的集合。
创建集合
以下是创建集合的例子:
# 创建空集合
set1 = set()
print(set1)
# 创建非空集合
set2 = {'apple', 'banana', 'orange'}
print(set2)
集合中的元素必须是不可变对象,例如数字、字符串、元组等。不可变对象指的是它们的值不能被修改。
我们可以使用 add() 方法向集合中添加元素,使用 update() 方法向集合中添加多个元素:
set2.add('grape')
print(set2)
set2.update(['pear', 'kiwi'])
print(set2)
在上述例子中,我们向集合中添加了两个元素:'grape' 和 'pear'。在使用 update() 方法时,需要在括号中加上方括号 []
,表示添加多个元素。
访问集合
我们可以使用 for 循环来遍历集合中的元素,或者使用 in 关键字来判断一个元素是否在集合中:
set3 = {'a', 'b', 'c', 'd'}
for x in set3:
print(x)
print('a' in set3)
print('e' in set3)
以上代码运行后,输出结果如下:
a
b
c
d
True
False
同样地,我们可以使用 len() 方法来获取集合中元素的数量:
print(len(set3))
输出结果为:
4
删除集合中的元素
我们可以使用 remove() 方法删除集合中的元素,如果要删除的元素不存在,则会抛出一个 KeyError 异常。如果希望删除元素但不抛出异常,可以使用 discard() 方法。另外,我们也可以使用 pop() 方法随机删除集合中的一个元素。
set4 = {'bear', 'cat', 'dog', 'elephant', 'fox'}
set4.remove('dog')
print(set4)
set4.discard('zebra')
print(set4)
set4.pop()
print(set4)
在上述代码中,我们首先使用 remove() 方法删除集合中的元素,再使用 discard() 方法删除一个不存在的元素,最后使用 pop() 方法随机删除集合中的一个元素。
字典
字典是一种无序的键值对数据结构,在 Python 中使用花括号 {}
创建字典,或者使用 dict()
方法创建一个空字典。字典中的元素是键值对,每个键值对包含一个键和一个值。键必须是不可变对象,例如字符串、数字、元组等,而值则可以是任何类型的对象。
创建字典
以下是创建字典的例子:
# 创建空字典
dict1 = {}
print(dict1)
# 创建一个字典
dict2 = {'apple': 1, 'banana': 2, 'orange': 3}
print(dict2)
在上述例子中,我们向字典中添加了三个键值对,分别是前面提到的 'apple'、'banana' 和 'orange'。
我们可以使用 [] 运算符来访问字典中的元素,或者使用 get() 方法访问字典中的元素,两者的区别在于如果字典中不存在指定的键,使用 [] 运算符会抛出一个 KeyError 异常,而使用 get() 方法则会返回 None。
print(dict2['apple'])
print(dict2.get('banana'))
# 以下代码将会抛出 KeyError 异常
# print(dict2['pear'])
# 以下代码将会返回 None
print(dict2.get('pear'))
在上述代码中,我们首先使用 [] 运算符和 get() 方法分别访问了字典中的元素,然后展示了使用 [] 运算符访问不存在的键会抛出异常的情况,以及使用 get() 方法访问不存在的键会返回 None 的情况。
修改字典中的元素
我们可以使用 [] 运算符或者 update() 方法修改字典中的元素:
dict2['banana'] = 5
print(dict2)
dict2.update({'pear':6, 'kiwi':7})
print(dict2)
在上述代码中,我们首先使用 [] 运算符更新了字典中的元素,然后使用 update() 方法添加了多个元素。
删除字典中的元素
我们可以使用 del 关键字删除字典中的元素,也可以使用 pop() 方法删除指定键的元素,并返回该键对应的值。如果指定键不存在,可以使用第二个参数为其指定默认值并返回。
dict3 = {1: 'apple', 2: 'banana', 3: 'orange', 4: 'pear'}
del dict3[2]
print(dict3)
pop_value = dict3.pop(3)
print(dict3, pop_value)
pop_value_2 = dict3.pop(5, 'key not found')
print(dict3, pop_value_2)
在上述代码中,我们使用 del 关键字和 pop() 方法删除了字典中的元素,还使用了 pop() 方法的第二个参数设置了不存在键时的默认值。