Python中的集合用于保存不重复元素,分为可变集合(set)和不可变集合(frozenset)两种。
本文主要是讲可变集合set的常用操作,包括创建集合、集合中添加元素和删除元素、集合的交集、并集和差集运算等。
set集合的定义
set集合是无序可变序列,集合的所有元素都放在一对大括号“{}”中,集合中两个相邻的元素之间使用逗号“,”分隔。
集合中的每个元素都是唯一的,因此可以运用于去重计算。
集合的创建
Python中set集合是无序的,因此每次输出时元素的排列顺序可能与代码中元素的排列顺序不同。
创建集合时重复元素会自动只保留一个。
下面介绍两种方法创建集合。
使用大括号创建集合
在Python中可直接将集合赋值给变量从而实现创建集合,即直接使用大括号创建集合。
语法格式:
setname = {element 1,element 2,element 3,......,element n}
# setname表示集合名称;
# element表示集合的元素,元素个数无限制,数据类型无限制。
示例代码如下:
set1 = {'萌兰','乐宝','七仔'}
set2 = {'panda1','panda2','panda3'}
set3 = {1,2,3,4,5,6,7}
set4 = {('萌兰','乐宝'),'是两只','panda'}
print(set1)
print(set2)
print(set3)
print(set4)
运行结果:
使用set()函数创建集合
在Python中可使用set()函数将列表、元组、range对象等其他可迭代对象转换成集合,若可迭代对象为字符串时,返回的集合是包含全部不重复字符的集合。
在Python中直接使用一对大括号表示创建一个空字典,因此创建空集合时只能使用set()函数实现,而不能直接使用大括号创建空集合。
set()函数语法格式:
setname = set(iteration)
# setname表示集合名称;
# iteration表示要转换为集合的可迭代对象
示例代码如下:
set1 = set(('萌兰','乐宝','七仔'))
set2 = set ('panda1,panda2,panda3')
set3 = set([1,2,3,4,5,6,7,10,22,33])
print(set1)
print(set2)
print(set3)
运行结果:
**注:**set()函数可以创建一个无序不重复的元素集,这个函数至多可传一个参数,若传多个参数则会有以下报错:
示例代码如下:
set4 = set(('萌兰','乐宝'),'是两只','panda')
print(set4)
运行结果:
集合中添加元素
使用add()方法向集合中添加元素,语法格式:
setname.add(element)
# setname表示要添加元素的集合;
# element表示要添加的元素内容。
**注:**添加的元素内容可以是字符串、数字和布尔类型的True或False等,不能使用列表、元组等可迭代对象。
示例代码如下:
setname = set(('萌兰','乐宝','七仔'))
print(setname)
setname.add('花花')
print(setname)
运行结果:
集合中删除元素
删除整个集合
使用del命令删除整个集合
示例代码如下:
setname = set(('萌兰','乐宝','七仔'))
print(setname)
del setname
print(setname)
运行结果:
删除指定元素
使用集合的remove()方法删除指定元素,若指定元素不存在,抛出异常。
示例代码如下:
setname = set(('萌兰','乐宝','七仔'))
print(setname)
setname.remove('七仔')
print(setname)
运行结果:
若指定删除的元素不存在,使用集合的remove()方法删除元素时会抛出异常。这种情况可以在删除指定元素前,先使用in关键字判断指定元素是否存在。
示例代码如下:
setname = set(('萌兰','乐宝','七仔'))
print(setname)
if '花花' in setname:
setname.remove('花花')
else:
print('花花不在集合中')
运行结果:
使用集合的discard()方法删除指定元素,若指定元素不存在,不抛出异常。
示例代码如下:
setname = set(('萌兰','乐宝','七仔'))
print(setname)
setname.discard('花花')
print(setname)
setname.discard('七仔')
print(setname)
运行结果:
随机删除一个元素
使用集合的pop()方法删除一个元素。
示例代码如下:
setname = set(('萌兰','乐宝','七仔'))
print(setname)
setname.pop()
print(setname)
运行结果:
清空集合
使用集合对象的clear()方法清空集合,即删除集合中的全部元素。
示例代码如下:
setname = set(('萌兰','乐宝','七仔'))
print(setname)
setname.clear()
print(setname)
运行结果:
集合的交集、并集和差集运算
交集元素使用“&”符号;
并集运算使用“|”符号;
差集运算使用“-”符号。
示例代码如下:
panda1 = set(['萌萌','萌兰','福星'])
panda2 = set(['花花','润玥','萌兰'])
print('在北京的熊猫有:',panda1)
print('在四川的熊猫有:',panda2,'\n')
print('既在北京又在四川的熊猫有:',panda1 & panda2)
print('在北京和四川的所有熊猫有:',panda1 | panda2)
print('只在四川不在北京的熊猫有:',panda2 - panda1)
运行结果:文章来源:https://www.toymoban.com/news/detail-426038.html
以上为Python基础知识中关于集合的全部知识点,下一章节将会讲解Python中的常用函数。。。。。。文章来源地址https://www.toymoban.com/news/detail-426038.html
到了这里,关于Python基础知识汇总(集合)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!