1.什么是集合(set)
可变的,无序的; 元素是唯一并且不可变
2.字面量
{元素1, 元素2, 元素3...}
set1 = {1, 23, 'abc'}
print(set1)
# set1 = {1, 23, 'abc', [1, 2]} # TypeError: unhashable type: 'list'
表示空集合
set2 = set()
print(type(set2))
set3 = {1, 2, 1, 2, 2}
print(set3)
集合自带去重功能
list1 = [1, 2, 1, 2, 2]
list1 = list(set(list1))
print(list1)
set1 = {1, 38, 90, 8}
1.查
# 集合不能单独的获取单个元素,只能一个一个的遍历
for item in set1:
print(item)
2.增
a.集合.add(元素) - 在集合中添加指定的元素
b.集合.update(序列) - 将序列中的元素添加到集合中
set1 = {1, 38, 90, 8}
set1.add('abc')
print(set1)
set1.update('abc')
print(set1)
set1.update({'aa': 10, 'bb': 20})
print(set1)
3.删
集合.remove(元素) --- 删除集合中指定的元素
set1 = {1, 38, 90, 8}
set1.remove(90)
print(set1)
4.数学集合运算
交集(&): 获取两个集合公共的元素产生一个新的集合
并集(|): 将两个集合中的元素合并在一起产生一个新的集合
差集(-): 集合1 - 集合2:去掉集合1中包含集合2的部分,剩下的产生一个新的集合
补集(^): 将两个集合合并在一起,去掉公共部分,剩下的部分产生一个新的集合
子集的判断: 集合1>集合2 -> 判断集合1中是否包含集合2, 集合1<集合2 - 判断集合1中是否包含集合2
set1 = {1, 2, 3, 4, 5, 6}
set2 = {4, 5, 6, 7, 8}
# 交集
print(set1 & set2) # {4, 5, 6}
# 并集
print(set1 | set2) # {1, 2, 3, 4, 5, 6, 7, 8}
# 差集
print(set1 - set2) # {1, 2, 3}
# 补集
print(set1 ^ set2) # {1, 2, 3, 7, 8}
print({1, 2, 3, 9, 18} > {1, 2, 3, 0}) # False
print({1, 2, 3, 9, 18} > {1, 2, 3}) # True、
print({1, 2, 3} > {1, 2, 3}) # False
print({1, 2, 3} >= {1, 2, 3}) # True
网友评论