第三章--第五节:集合

集合是一个无需不重复的序列,用 set 来表示

零、创建集合

创建集合的方式有两种,分别是 {}set(),下面我们来具体讲解一下。

  1. {} 形式
    {} 形式用来创建一个 非空集合,语法如下:
set={v1,v2,v3,...,vn}

下面我们通过例子来看一下具体怎么使用

# 例子一、定义一个包含字符串的集合
name={'张三','李四','王五','赵六','田七'}

# 例子二、定义一个包含多种类型的集合
person={'张三',24,63.5}

  1. set() 形式
    set() 用来创建空集合或者包含数据的集合,语法如下:
set=set(value)

下面我们通过例子来看一下:

# 例子一、定义一个空集合
name=set()

# 例子二、定义一个非空的集合
abc=set('abcdefghijklmnopqrstuvwxyz')

注意1:在定义空集合时,不能使用 {} 来创建,因为 {} 是用来创建空字典的,如果要创建空集合必须使用 set()

注意2:{} 方式创建集合的方式与创建字典类似,它们的区别是字典的元素是 key:value 形式,而集合则是使用 value 形式。

一、获取集合元素

由于集合是无序的,所以索引没有任何意义,所以我们无法利用索引获取和更新元素,但是我们可通过循环的方式获取元素,代码如下:

# 定义姓名集合
names={'张三','李四','王五'}
# 循环输出集合内容
for name in names:
  print(name)

二、添加、删除集合元素

  1. 添加
    添加元素我们可以使用 add 方法,语法如下:
set.add(value)

我们通过例子来看一下怎么使用:

# 定义姓名集合
names={'张三','李四','王五'}
# 添加一个新姓名赵六
names.add('赵六')
# 打印names,会发现集合中增加了赵六
print(names)
  1. 删除
    删除集合元素我们会使用 remove 方法,语法如下:
set.remove(要删除的元素)

我们通过例子来看一下具体用法:

# 定义姓名集合
names={'张三','李四','王五'}
# 删除李四
names.remove('李四')
# 打印names,会发现集合中李四消失了
print(names)

三、集合其他操作

函数 说明
copy() 拷贝一个集合
difference() 返回多个集合的差集
difference_update() 移除集合中的元素,该元素在指定的集合也存在
discard() 删除集合中指定的元素
intersection() 返回集合的交集
intersection_update() 删除集合中的元素,该元素在指定的集合中不存在
isdisjoint() 判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False
issubset() 判断指定集合是否为该方法参数集合的子集
issuperset() 判断该方法的参数集合是否为指定集合的子集
pop() 随机移除元素
symmetric_difference() 返回两个集合中不重复的元素集合
symmetric_difference_update() 移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中
union() 返回两个集合的并集
update() 给集合添加元素

四、小结

本节主要讲解了集合的操作,集合是一个比较特殊的序列,集合用的比较少,在这个教程中只需要了解即可。在后面我会通过杂文的形式具体讲解集合。

觉得不错打赏一下吧,金额随意!

原文地址:https://www.cnblogs.com/gangzhucoll/p/12778224.html