【Python基础】之集合set()

集合用{}包含元素,但是不能用{}初始化集合,因为用{}初始化一个变量,默认是字典,集合是一个不重复且无序的元素集

集合的常用功能:

  • set():初始化一个集合或者将其他数据类型转换为集合
  • add():添加一个元素,如果原集合已存在该元素,则不添加
  • clear():情况集合
  • difference():返回原集合中存在,而传入集合中不存在的集合,原集合内容不变
  • difference_updata():将原集合中存在,而传入集合中不存在的集合赋给原集合,不返回值
se1 = {1,2,3,4,5}
se2 = {3,4,5,6,7}
#difference 原se1不变
print(se1.difference(se2))#输出:{1, 2}
print(se1)#输出:{1, 2, 3, 4, 5}
#difference_update 原se1改变:
se1.difference_update(se2)
print(se1)#输出:{1, 2}
  • discard():移除指定元素,不存在时不报错
  • remove():移除指定元素,不存在时报错
  • intersection():返回原集合与传入的集合的交集,原集合不变
  • intersection_update():将原集合与传入的集合的交集赋给原集合,不返回值
se1 = {1,2,3,4,5}
se2 = {3,4,5,6,7}
#intersection 原se1不变
print(se1.intersection(se2))#输出:{3, 4, 5}
print(se1)#输出:{1, 2, 3, 4, 5}
#intersection_update 原se1改变:
se1.intersection_update(se2)
print(se1)#输出:{3, 4, 5}
  • isdisjoint():无交集返回True,有交集返回False
  • issubset():原集合是传入集合的子集返回True,否则返回False
  • issuperset():原集合是传入集合的父集返回True,否则返回False
  • symmetric_difference():返回 原集合与传入集合的并集减交集,原集合不变
  • symmetric_difference_updata():将 原集合与传入集合的并集减交集赋给原集合
se1 = {1,2,3,4,5}
se2 = {3,4,5,6,7}
#symmetric_difference
print(se1.symmetric_difference(se2))#输出:{1, 2, 6, 7}
print(se1)#输出:{1, 2, 3, 4, 5}
#symmetric_difference_update
se1.symmetric_difference_update(se2)
print(se1)#输出:{1, 2, 6, 7}
  • union():返回原集合与传入集合的并集,原集合不变
  • update():不返回值,根据传入参数(可以是字符串,列表,元组,集合,字典(如果是字典的话,只取字典的键)),更新原集合。

猜你喜欢

转载自blog.csdn.net/lincoco49/article/details/89319116