Python中创建集合的方法有哪些呢?

Python中创建集合的方法有哪些呢?,第1张

集合分为两种:可变集合(set)和不可变集合(frozenset),现在学习的是可变集合。

在Python中,有关于集合的 *** 作主要有:集合的创建;集合的添加和删除;集合的交、并和差集运算。

今天先来学习如何创建集合。

集合的创建有两种方法:直接赋值法和set()函数法。

1、直接赋值法

和Python的其它序列一样,采用直接赋值法就可以直接创建一个集合,具体语法格式如下:

setname = {“element1”,“element2”,“element3”,……,“elementn”,}

从格式上看,和其它的序列创建方法基本一样,就是集合名setname直接使用赋值运算符等号“=”赋值,等号后面的元素内容使用英文半角的大括号“{ }”括起来,各个元素之间依然使用英文半角的逗号“,”分隔。

这里虽然和字典一样使用大括号“{ }”,但是只要记住字典的元素是由键值对组成的(详见前第62节内容),就完全可以区分所创建的是字典还是集合了。

一、创建集合

创建非空集合:集合中set括号中需要的参数的数据类型有:序列(包括字符串、列表、元组),字典可以转为集合,注意数值类型不能作为集合的参数,如int类型。

二、添加元素

add() 方法是将要添加的元素作为一个整体添加到集合中

update() 方法是把要传入的元素拆分成单个字符,存于集合中,并去掉重复的

三、删除元素

集合的删除 *** 作使用的方法跟列表是一样的,使用的也是 remove 方法,只能单个删除

四、遍历集合

五、集合与字符串、列表、元组互转,集合转字典

六、查找元素并删除

函数原型: a.discard(b)

参数说明:a为一个set类型的变量;b表示要查找并删除的元素

函数作用:在集合setVar中查找element元素,如果存在则删除;如果没找到,则什么也不做。该函数没有返回值

七、pop用法

函数原型: set1.pop()     删除并返回集合set1中的第一个元素,如果为空引发KeyError错误+

八、clear、copy和len的用法

clear     方法用于清空集合中的所有元素

copy     方法用于集合拷贝

len     跟求序列的长度的函数len()是一样的,返回的是集合中有多少个元素

九、求集合的交集、并集、差集和difference的用法

求集合的 交集 使用的符号是 “&”

求集合的 并集 用的是符号 “|”

求集合的 差集 使用的符号是减号 “-”

difference    等价于集合的差集 ,查看两个集合的不同之处。这种不同指的是集合s1相对于集合s2,不同的地方,也就是所有在集合s1中,而不再集合s2中的的元素组成的新集合

十、运算符判断集合间关系和issuperset、issubset的用法

集合可以使用大于(>)、小于(<)、大于等于(>=)、小于等于(<=)、等于(==)、不等于(!=)来判断某个集合是否完全包含于另一个集合,也可以使用子父集判断函数。

issuperset     集合st1是否是集合st2的父集

issubset     集合st1是否是集合st2的子集

十一、不可变集合frozenset的用法

frozenset     该集合中的内容是不可改变的,其他功能及 *** 作跟可变集合set一样

集合可以像元组一样,设置不可改变的类型也可以默认像字典,列表一样,可以迭代改变同时集合里的元素可以是列表,元组,字典。

1、python集合的作用——创建字典

可使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

>>>my_set = set(('apple',))

>>>my_set

{'apple'}

2、python集合的作用——添加元素(add(),update())

# add 作为一个整体添加到集合中

my_set = set()

my_set.add("abc")

print(my_set)

#update 是把要传入的元素拆分,做为个体传入到集合中

my_set = set()

my_set.update("abc")

print(my_set)

3、python集合的作用——删除元素(remove(),pop(),discard())

#remove 如果集合种有,则直接删除如果没有,程序报错 格式:集合名.remove(元素)

my_set = {11, 13, 15}

my_set.remove(13)

print(my_set) my_set.remove(131)

print(my_set)

#pop 随机删除集合中的元素 如果集合中没有元素则程序报错

my_set = {11, 13, 15}

my_set.pop()

print(my_set)

#discard 如果集合中元素存在,直接删除如果元素不存在 不做任何 *** 作 格式: 集合名.discard(元素)

my_set = {11, 13, 15}

my_set.discard(13)

print(my_set)

my_set.discard(131)

print(my_set)

4、python集合的作用——交集( &)

set1 = {9, 2, 3, 4}

set2 = {3, 4, 5, 16}

new_set = set1 &set2

print(new_set)

# result {3, 4}

5、python集合的作用——并集( | )

set1 = {1, 2, 3, 4}

set2 = {3, 5, 5, 6}[page]

new_set = set1 | set2

print(new_set)

# result {1, 2, 3, 4, 5, 6}

6、python集合的作用——差集(-)

项在前一个集合中,但不在后一个集合中。

set1 = {1, 2, 3, 4}

set2 = {3, 4, 5, 6}

new_set = set1 - set2

print(new_set)

# result {1, 2}

7、python集合的作用——对称差集( ^ )

即项在前一个集合或后一个集合中,但不会同时出现在二者中。即交集减去并集。

set1 = {1, 2, 3, 4}

set2 = {3, 4, 5, 6}

new_set = set1 ^ set2

print(new_set)

# result {1,2,5,6}

8、python集合的作用——子集判断

set1 = { 3, 4}

set2 = {3, 4, 5, 6}

# 判断set1是否是set2的子集

print(set1.issubset(set2))

# result True

9、python集合的作用——父集判断

set1 = { 3, 4}

set2 = {3, 4, 5, 6}

# 判断set1是否是set2的父集

print(set1.issuperset(set2))

# result False

10、python集合的作用——迭代和枚举

s={34,56,76,34,56,54,43,23,56}

for i in s:

print(i) ##迭代输出其内容

for i,v in enumerate(s):

print('index: %s,value: %s' %(i,v))

"""

result:

index: 0,value: 34

index: 1,value: 43

index: 2,value: 76

index: 3,value: 54

index: 4,value: 23

index: 5,value: 56

"""

可观察出,集合会自动过滤掉相同元素。

python集合的作用都有哪些?原来这些功能才是最实用的,集合可以像元组一样,设置不可改变的类型也可以默认像字典,列表一样,可以迭代改变同时集合里的元素可以是列表,元组,字典,你能处理好吗?如果您还担心自己入门不顺利,可以点击本站的其他文章进行学习。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11379215.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存