Python Set集合的用法(附带实例)
Python 中的集合(Set)用于保存不重复的元素,集合中的元素必须唯一。
集合的表示方法与字典类似,格式为:
下面创建集合。输入代码:
此外,可使用 set() 函数创建集合。输入代码:
当集合元素重复时,重复的元素只显示一次。输入代码:
输入代码:
输入代码:
输入代码:
输入代码:
如果集合元素中不包含 85,要删除集合元素 85 时,则会报错。输入代码:
下面使用 discard() 函数删除集合元素 83。输入代码:
下面使用 discard() 函数删除集合中不存在的元素。输入代码:
集合的表示方法与字典类似,格式为:
{element1, element2, ..., elementn}集合中的元素是无序的。每次输出集合元素时,元素的顺序可能不同。
下面创建集合。输入代码:
cloudy = {83, 91, 92, 97} print(cloudy)运行结果为:
{97, 83, 91, 92}
此外,可使用 set() 函数创建集合。输入代码:
cloudy = set((83, 91, 92, 97)) print(cloudy)运行结果为:
{97, 91, 83, 92}
当集合元素重复时,重复的元素只显示一次。输入代码:
cloudy = set((83, 91, 83, 97)) print(cloudy)运行结果为:
{97, 91, 83}
集合元素 83 重复了两次,在输出集合时,元素 83 只显示一次。Python访问集合元素
因为集合元素是无序的,所以无法像列表一样使用索引访问集合元素。通常,可使用 for 循环访问集合元素。输入代码:
cloudy = set(((83, 91, 83, 97, 98)) for angel in cloudy: print(angel, end=',')运行结果为:
97,91,83,98
Python添加集合元素
我们通常使用 add() 函数添加集合元素。输入代码:cloudy = set(((83, 91, 97, 98)) cloudy.add(66) print(cloudy)运行结果为:
{97, 66, 98, 83, 91}
使用 add() 函数添加元素 66 后,输出集合。元素 66 在所有元素的第二位,可见在增加集合元素时,元素的添加顺序是无序的。Python插入集合元素
插入集合元素是指在原来的集合中,使用 update() 方法插入新的元素。输入代码:
cloudy = set((83, 91, 97, 98)) cloudy.update((66, 77, 88, 90)) print(cloudy)运行结果为:
{97, 66, 98, 77, 83, 88, 90, 91}
Python删除集合
1) del关键字
我们通常使用 del 关键字删除集合。输入代码:cloudy = set((83, 91, 97, 98)) del cloudy print(cloudy)运行程序会报错。使用 del 关键字删除集合后,再访问集合时将导致 NameError 错误,这证明我们成功删除了集合。
2) clear()函数
与使用 del 关键字删除集合不同,clear() 函数只删除集合元素,会保留集合的变量名,即将原来的集合变为空集合。输入代码:
cloudy = set((83, 91, 97, 98)) cloudy.clear() print(cloudy)运行结果为:
set()
由此可见,使用 clear() 函数会删除集合元素,同时保留集合的变量名,并返回一个空的集合。3) remove()函数
remove()函数可删除集合的指定元素。如果指定的元素不在集合中,则会报错。输入代码:
cloudy = set((83, 91, 97, 98)) cloudy.remove(83) print(cloudy)运行结果为:
{97, 91, 98}
从运行结果不难看出,成功将元素 83 从集合中删除。如果集合元素中不包含 85,要删除集合元素 85 时,则会报错。输入代码:
cloudy = set((83, 91, 97, 98)) cloudy.remove(85) print(cloudy)由于集合中不包含元素 85,使用 remove() 函数删除元素 85 时会报 KeyError 错误。
4) discard()函数
与 remove() 函数相似,discard() 函数可删除集合的指定元素,并显示剩余元素。使用 discard() 函数删除集合元素时,若删除的元素不在集合中,也不会报错。下面使用 discard() 函数删除集合元素 83。输入代码:
cloudy = set((83, 91, 97, 98)) cloudy.discard(83) print(cloudy)运行结果为:
{97, 91, 98}
下面使用 discard() 函数删除集合中不存在的元素。输入代码:
cloudy = set((83, 91, 97, 98)) cloudy.discard(85) print(cloudy)运行结果为:
{97, 91, 83, 98}
集合中不包含元素 85,discard() 函数无法删除指定元素 85,也不报错误,直接显示元素 97、91、83、98。