集合的函数
1 2 3 4 5 6 7 8 9 10
| 向集合中添加一个元素/数据 格式:集合.add(数据),返回值:None
fruits = {'apple','orange','pear'} print(fruits)
fruits.add('banana') print(fruits)
注意:操作直接修改原有集合。
|
1 2 3 4 5 6 7 8 9 10
| 随机删除集合中的一个元素/数据 格式:集合.pop(),返回值:随机删除的数据
it = {'php','java','lua','python','c','c++'} print(it)
result = it.pop() print(it,result)
注意:操作直接修改原有集合。
|
1 2 3 4 5 6 7 8 9 10
| 删除指定的数据,数据不存在会报错 格式:集合.remove(数据),返回值:None
it = {'php','java','lua','python','c','c++'} print(it)
result = it.remove('javascript') print(it,result)
注意:操作直接修改原有集合。
|
1 2 3 4 5 6 7 8 9 10
| 删除指定的数据,数据不存在不进行操作 格式:集合.discard(数据),返回值:None
it = {'php','java','lua','python','c','c++'} print(it)
result = it.discard('javascript') print(it,result)
注意:操作直接修改原有集合。
|
1 2 3 4 5 6 7 8 9
| 清空集合 格式:集合.clear(),返回值:None
drink = {'冰糖雪梨','橙子汁','西瓜汁','椰汁','草莓汁'} print(drink,id(drink))
result = drink.clear() print(drink,id(drink),result) 注意:操作直接修改原有集合。
|
1 2 3 4 5 6 7 8 9 10
| 复制集合 格式:集合.copy(),返回值:None
fruit = {'樱桃','水蜜桃','扁桃','油桃','猕猴桃'} print(fruit,id(fruit))
newfruit = fruit.copy() print(newfruit,id(newfruit))
注意:复制的集合和原集合内容一样,但是不是一个集合
|
集合运算函数
1 2 3 4 5 6 7
| 格式:集合1.difference(集合2),返回值:差集的集合
fruit1 = {'苹果','梨','橘子','柚子','西瓜','草莓'} fruit2 = {'橙子','桃子','葡萄','提子','草莓','樱桃','橘子'}
result = fruit1.difference(fruit2) print(result)
|
1 2 3 4 5 6 7 8
| 格式:集合1.difference_update(集合2),返回值:None
fruit1 = {'苹果','梨','橘子','柚子','西瓜','草莓'} fruit2 = {'橙子','桃子','葡萄','提子','草莓','樱桃','橘子'} fruit1.difference_update(fruit2) print(fruit1)
注意:所谓更新差集,就是计算差集之后将结果重新赋值给第一个集合的变量而已
|
1 2 3 4 5 6
| 格式:集合1.intersection(集合2),返回值:交集的集合
fruit1 = {'苹果','梨','橘子','柚子','西瓜','草莓'} fruit2 = {'橙子','桃子','葡萄','提子','草莓','樱桃','橘子'} result = fruit1.intersection(fruit2) print(result)
|
1 2 3 4 5 6 7 8
| 格式:集合1.intersection_update(集合2),返回值:None
fruit1 = {'苹果','梨','橘子','柚子','西瓜','草莓'} fruit2 = {'橙子','桃子','葡萄','提子','草莓','樱桃','橘子'} fruit1.intersection_update(fruit2) print(fruit1)
注意:更新交集,就是计算交集之后将结果重新赋值给第一个集合的变量
|
1 2 3 4 5 6
| 格式:集合1.union(集合2),返回值:并集结果
fruit1 = {'苹果','梨','橘子','柚子','西瓜','草莓'} fruit2 = {'橙子','桃子','葡萄','提子','草莓','樱桃','橘子'} result = fruit1.union(fruit2) print(result)
|
1 2 3 4 5 6 7 8
| 格式:集合1.update(集合2),返回值:None
fruit1 = {'苹果','梨','橘子','柚子','西瓜','草莓'} fruit2 = {'橙子','桃子','葡萄','提子','草莓','樱桃','橘子'} fruit1.update(fruit2) print(fruit1)
注意:更新并集,就是计算并集之后将结果重新赋值给第一个集合的变量
|
1 2 3 4 5 6
| 格式:集合1.issuperset(集合2),返回值:布尔值
fruit = {'西瓜','椰子','香蕉','葡萄','芒果','猕猴桃'} yellowfruit = {'香蕉','芒果'} result = fruit.issuperset(yellowfruit) print(result)
|
1 2 3 4 5 6
| 格式:集合1.issubset(集合2),返回值:布尔值
fruit = {'西瓜','椰子','香蕉','葡萄','芒果','猕猴桃'} yellowfruit = {'香蕉','芒果'} result = yellowfruit.issubset(fruit) print(result)
|
1 2 3 4 5 6 7 8
| 格式:集合1.isdisjoint(集合2),返回值:布尔值
fruit1 = {'苹果','梨','橘子','柚子','西瓜','草莓'} fruit2 = {'橙子','桃子','葡萄','提子','柚子','樱桃'} result = fruit1.isdisjoint(fruit2) print(result)
注意:集合不相交结果为True,集合相交,结果为False
|
- symmetric_difference()对称差集
1 2 3 4 5 6
| 格式:集合1.symmetric_difference(集合2),返回值:对称差集的集合
fruit1 = {'苹果','梨','橘子','柚子','西瓜','草莓'} fruit2 = {'橙子','桃子','葡萄','提子','柚子','樱桃'} result = fruit1.symmetric_difference(fruit2) print(result)
|
- symmetric_difference_update()对称差集更新运算
1 2 3 4 5 6 7 8
| 格式:集合1.symmetric_difference_update(集合2),返回值:None
fruit1 = {'苹果','梨','橘子','柚子','西瓜','草莓'} fruit2 = {'橙子','桃子','葡萄','提子','柚子','樱桃'} fruit1.symmetric_difference_update(fruit2) print(fruit1)
注意:计算对称差集的结果直接更新到集合1的变量当中
|
冰冻集合/固定集合
一旦创建就不可以进行修改的集合。一种数据类型。
创建冰冻集合
1 2 3 4 5
| 变量 = frozenset()
myset = frozenset()
print(myset,type(myset))
|
1 2 3 4
| 变量 = frozenset(容器数据)
myset = frozenset(['冰淇淋','老冰棍','奶油冰棍','小豆冰棍']) print(myset,type(myset))
|
冰冻集合的作用
为集合的操作提供一个不可以改变的对照集合。冰冻集合除了不能修改之外,其余和集合一样!