- 13 update()方法—更新为并集
- 1.语法要点
- 2.实操练习
- (1)update()方法的参数为集合
- (2)update()方法的参数为列表
- (3)update()方法的参数为元组
- (4)update()方法的参数为字典
- (5)update()方法的参数为字符串
- (6)update()方法的参数为多个可迭代对象
- 3.知识回顾
- (1)update方法和union方法的异同点
- 两个方法的参数一样
- 作用一样
- 返回值不一样
- (2)update方法和intersection_update()的异同点
- 两个方法的参数一样
- 都没有返回值,都改变集合1
- 作用不一样
- 4.课后总结
update()方法——返回集合与可迭代对象的并集。
即返回集合1与其他可迭代对象(集合、列表、元组、字典、字符串)中含有的所有元素,重复的元素仅保留1个(集合不能包含重复的元素)。
update()方法的参数可以是一个或多个可迭代对象。
update()方法的参数不能是整数或浮点数。
update()方法改变集合1,没有返回值。
# 用set()方法将字符串转换为集合
set_1 = set('123')
set_2 = set('345')
# 用{}新建集合
set_3 = {3, 6, 8, 9}
print('更新前的集合1:',set_1)
print('更新前的集合2:',set_2)
print('更新前的集合3:',set_3,'n')
# 用update()方法将集合1更新为多个集合的并集
set_1.update(set_2,set_3)
print('更新后的集合1:',set_1)
print('更新后的集合2:',set_2)
print('更新后的集合3:',set_3)
【终端输出】
更新前的集合1: {'1', '2', '3'}
更新前的集合2: {'4', '5', '3'}
更新前的集合3: {8, 9, 3, 6}
更新后的集合1: {3, '5', 6, 8, '4', 9, '2', '3', '1'}
更新后的集合2: {'4', '5', '3'}
更新后的集合3: {8, 9, 3, 6}
用update更新集合后:
集合1变成3个集合的并集。
集合2、集合3还是原来的集合,没有改变。
# 用set()方法将字符串转换为集合
set_1 = set('123')
# 用list()方法将字符串转换为列表
list_1 = list('345')
# 输出list_1的数据类型
print(type(list_1,),'n')
print('更新前的集合1:',set_1)
print('更新前的列表:',list_1,'n')
# 用update()方法将集合1更新为集合与列表的并集
set_1.update(list_1)
print('更新后的集合1:',set_1)
print('更新后的列表:',list_1)
【终端输出】
更新前的集合1: {'1', '2', '3'} 更新前的列表: ['3', '4', '5'] 更新后的集合1: {'5', '4', '2', '3', '1'} 更新后的列表: ['3', '4', '5']
用update更新集合后:
集合1变成集合与列表的并集。
列表还是原列表,没有改变。
# 用set()方法将字符串转换为集合
set_1 = set('123')
# 用tuple()方法将字符串转换为元组
tuple_1 = tuple('345')
# 输出tuple_1的数据类型
print(type(tuple_1,),'n')
print('更新前的集合1:',set_1)
print('更新前的元组:',tuple_1,'n')
# 用update()方法将集合1更新为集合与元组的并集
set_1.update(tuple_1)
print('更新后的集合1:',set_1)
print('更新后的元组:',tuple_1)
【终端输出】
更新前的集合1: {'1', '2', '3'} 更新前的元组: ('3', '4', '5') 更新后的集合1: {'5', '4', '2', '3', '1'} 更新后的元组: ('3', '4', '5')
用update更新集合后:
集合1变成集合与元组的并集。
元组还是原来的元组,没有改变。
# 用set()方法将字符串转换为集合
set_1 = set('123')
# 用{}创建1个字典
dict_1 = {
1:'学号',
2:'姓名',
3:'年龄',
}
print('更新前的集合1:',set_1)
print('更新前的字典:',dict_1,'n')
# 用update()方法将集合1更新为集合与字典的并集
set_1.update(dict_1)
print('更新后的集合1:',set_1)
print('更新后的字典:',dict_1)
【终端输出】
更新前的集合1: {'1', '2', '3'}
更新前的字典: {1: '学号', 2: '姓名', 3: '年龄'}
更新后的集合1: {'1', 1, 2, 3, '2', '3'}
更新后的字典: {1: '学号', 2: '姓名', 3: '年龄'}
用update更新集合后:
集合1变成集合与字典的并集。
字典还是原来的字典,没有改变。
【温馨提示】
字典中的键是整数类型的数据:1,2,3
集合中的元素是字符串类型的数据:‘1’,‘2’,‘3’
因此得到的新集合有6个元素。
# 用set()方法将字符串转换为集合
set_1 = set('123')
# 声明一个字符串
str_1 = '345'
print('更新前的集合1:',set_1)
print('更新前的字符串:',str_1,'n')
# 用update将集合1更新为集合与字符串的交集
set_1.update(str_1)
print('更新后的集合1:',set_1)
print('更新后的字符串:',str_1)
【终端输出】
更新前的集合1: {'1', '2', '3'}
更新前的字符串: 345
更新后的集合1: {'5', '4', '2', '3', '1'}
更新后的字符串: 345
用update更新集合后:
集合1变成集合与字符串的并集。
字符串还是原来的字符串,没有改变。
# 用set()方法将字符串转换为集合
set_1 = set('123')
set_2 = set('345')
print('更新前的集合1:',set_1)
# 声明一个字符串
str_1 = '345'
# 用{}创建1个字典
dict_1 = {
1:'学号',
2:'姓名',
3:'年龄',
}
# 用tuple()方法将字符串转换为元组
tuple_1 = tuple('345')
# 用list()方法将字符串转换为列表
list_1 = list('345')
# 用update更新集合1为集合与多个可迭代对象的并集
set_1.update(str_1, list_1, tuple_1, dict_1, set_2)
print('更新后的集合1:',set_1)
【终端输出】
更新前的集合1: {'1', '2', '3'}
更新后的集合1: {1, 2, 3, '5', '4', '2', '3', '1'}
3.知识回顾
(1)update方法和union方法的异同点
两个方法的参数一样
update方法和union方法参数都是可迭代对象(集合、列表、元组、字典、字符串)。
参数都不能是整数或浮点数。
作用都是取集合与多个可迭代对象的并集。
返回值不一样union()方法返回的是一个新的集合。
update()方法没有返回值。
union()方法用于取集合1和集合2的并集,并将并集作为一个新的集合返回,且不改变集合1和集合2。
update()方法用于取集合1和集合2的并集,并将取到的交集更新到集合1中,改变集合1不改变集合2,且该方法没有返回值。
参数都是可迭代对象(集合、列表、元组、字典、字符串)。
参数都不能是整数或浮点数。
intersection_update()方法得到是交集(都有的元素)。
update()方法得到的是并集(所有元素)。
print("**********update()方法**********")
# 用{}创建集合
set_1 = {1, 2, 3, 4}
set_2 = {3, 4, 5, 6}
print('取并集前的集合1:',set_1)
print('取并集前的集合2:',set_2,'n')
# 用update()方法取并集
set_1.update(set_2)
print('取并集后的集合1:',set_1)
print('取并集后的集合2:',set_2,'n')
print("**********intersection_update()方法**********")
# 用{}创建集合
set_1 = {1, 2, 3, 4}
set_2 = {3, 4, 5, 6}
print('取交集前的集合1:',set_1)
print('取交集前的集合2:',set_2,'n')
# 用intersection_update 取交集
set_1.intersection_update(set_2)
print('取交集后的集合1:',set_1)
print('取交集后的集合2:',set_2)
【终端输出】
**********update()方法**********
取并集前的集合1: {1, 2, 3, 4}
取并集前的集合2: {3, 4, 5, 6}
取并集后的集合1: {1, 2, 3, 4, 5, 6}
取并集后的集合2: {3, 4, 5, 6}
**********intersection_update()方法**********
取交集前的集合1: {1, 2, 3, 4}
取交集前的集合2: {3, 4, 5, 6}
取交集后的集合1: {3, 4}
取交集后的集合2: {3, 4, 5, 6}
4.课后总结



