集合(set)是一个无序的不重复元素序列。
add()函数 --添加元素,在原集合进行添加
描述:如果集合s中不存在元素x,则将元素x添加到集合s中。
语法:s.add(x)
x —— 要添加的元素。集合s已经存在元素x,也不会报错。
union()函数 --合并集合,返回新集合
描述:生成集合的并集。即将集合a和集合b取并集,并将并集作为一个新的集合返回, 但是不改变原集合a和集合b
语法:a.union(b,c,d…) 等效于 a | b | c | d…
a —— 集合a
b,c,d… —— 括号中可以有多个集合(但至少要有一个)。
update()函数–可合并集合、添加可迭代对象作为元素,在原集合进行添加
描述:将集合a和集合b取并集,并将结果保存在集合a中(即更新集合a),集合b不改变,但是没有返回值。或将x中的所有项添加到集合a中。x可以是 集合,列表,元组,字典等或者支持迭代的所有对象。
语法:a.update(b,c,d…) 返回值为空
a —— 集合a
b,c,d… —— 括号中可以有多个集合(但至少要有一个)。
x—— 可以是 集合,序列或可以迭代的对象(括号中可以有多个对象)。
注:集合中union()函数和update()函数都是将多个可迭代的集合 合并,但是返回的结果和对原集合的影响却不一样
a = set()
b = 'world'
a.add('hello')
# print(a|b) # TypeError: unsupported operand type(s) for |: 'set' and 'str'
a.update(b) # {'o', 'r', 'hello', 'l', 'd', 'w'}
print(a)
x = {"11", "22", "33"}
y = {"22", "12", "34"}
x.add("goog")
# x.add(y) # TypeError: unhashable type: 'set'
print(x) # {'goog', '33', '11', '22'}
print(x | y) # {'goog', '11', '22', '12', '33', '34'}
x.update(y)
print(x) # {'goog', '11', '22', '12', '33', '34'}