Python--集合
- <font color=blue>一、创建集合
- <font color=blue>二、访问集合元素
- <font color=blue>三、集合的增、删、查、改操作
- <font color=blue>1、添加元素
- <font color=blue>2、删除元素
- <font color=blue>3、查找元素
- <font color=blue>4、修改元素
- <font color=blue>四、集合的运算
- <font color=blue>1、交集
- <font color=blue>2、并集
- <font color=blue>3、差集
- <font color=blue>4、补集
- <font color=blue>五、集合方法汇总
一、创建集合
1、使用{}创建集合
set1 = {'a', 'b', 'c', 3, 3}
print(set1)#输出
{'c', 3, 'b', 'a'}
从此例可以得出两点:
第一:集合打印出的元素顺序和定义时的顺序不一定是一致的!
第二:集合会将里面重复的元素值自动去除!
set1 = {}
print(type(set1))set2 = {1}
print(type(set2))#输出结果
<class 'dict'>
<class 'set'>
根据上例可以看到,使用{}创建集合时,如果{}里面没有元素,则它不是一个集合,而是一个字典!
2、使用set()创建集合
set1 = set()
print(type(set1))set2 = set([1, 2])
print(type(set2))
print(set2)#输出结果
<class 'set'>
<class 'set'>
{1, 2}
二、访问集合元素
由于set 集合中的元素是无序的,因此无法使用索引(下标)访问元素。通常使用for循环遍历访问集合元素。
set1 = {1, 5, 'k'}
for i in set1:print(i)#结果
1
k
5
三、集合的增、删、查、改操作
1、添加元素
1)、使用add()添加
set1 = {1, 5, 'k'}
set1.add('element')
for i in set1:print(i)#输出
element
1
5
k
如果要添加的元素已存在,则add() 方法就不会添加元素。
2)、使用update()添加元素
set1 = {1, 5, 'k'}
set1.update({'element'})
set1.update([22, 33])
set1.update([44, 55])
for i in set1:print(i)#输出
k
1
33
5
44
55
element
22
2、删除元素
1)、使用remove()删除元素
remove() 方法在移除一个不存在的元素时会发生错误。
set1 = {1, 5, 'k'}
set1.remove(1) #删除元素1
for i in set1:print(i)#输出
k
5
2)、使用discard()删除元素
discard() 方法在移除一个不存在的元素时不会发生错误。
set1 = {1, 5, 'k'}
set1.discard(5) #删除元素5
for i in set1:print(i)#输出
1
k
3)、使用pop()删除元素
pop()方法会随机删除元素。
set1 = {1, 5, 'k', 6, 7}
set1.pop()
set1.pop()
for i in set1:print(i)#输出
6
7
k
4)、使用clear()清空集合
set1 = {1, 5, 'k', 6, 7}
set1.clear() #清空集合
5)、使用del语句删除集合
set1 = {1, 5, 'k', 6, 7}
del set1 #彻底删除集合
for i in set1:print(i)#输出
NameError: name 'set1' is not defined. Did you mean: 'set'?
3、查找元素
可以使用in和not in判断某个元素是否在集合中。
set1 = {1, 5, 'k', 6, 7}
if 'k' in set1:print('ok')
if 'h' not in set1:print('No')#输出
ok
No
4、修改元素
set不支持修改元素。若想要修改元素,可以先将某个元素删除,然后通过add()或者update()重新添加这个元素。
set1 = {1, 5, 'k', 6, 7}
set1.remove('k') #将元素k修改为h,先删除再添加
set1.add('h')
print(set1)#输出
{1, 5, 6, 7, 'h'}
四、集合的运算
1、交集
取两集合公共的元素。
1)、使用“&”运算符
set1 = {1, 2, 3}
set2 = {1, 3, 5}print(set1 & set2) #集合set1和set2做交集运算#输出
{1, 3}
2、使用intersection()方法
set1 = {1, 2, 3}
set2 = {1, 3, 5}print(set1.intersection(set2)) #集合set1和set2做交集运算#输出
{1, 3}
2、并集
取两集合全部的元素。
1)、使用“|”运算符
set1 = {1, 2, 3}
set2 = {1, 3, 5}print(set1 | set2) #集合set1和set2做并集运算#输出
{1, 2, 3, 5}
2)、使用union()方法
set1 = {1, 2, 3}
set2 = {1, 3, 5}print(set1.union(set2)) #集合set1和set2做并集运算#输出
{1, 2, 3, 5}
3、差集
取一个集合(被减数集合)中另一个集合没有的元素。
1)、使用“-”运算符
set1 = {1, 2, 3}
set2 = {1, 3, 5}print(set1 - set2)
print(set2 - set1)#输出
{2}
{5}
2)、使用difference()方法
set1 = {1, 2, 3}
set2 = {1, 3, 5}print(set1.difference(set2))
print(set2.difference(set1))#输出
{2}
{5}
4、补集
取集合 A 和 B 中不属于 A&B 的元素。
使用“-”运算符
set1 = {1, 2, 3}
set2 = {1, 3, 5}
print(set1^set2)#输出
{2, 5}
五、集合方法汇总
本文链接:https://my.lmcjl.com/post/10382.html
展开阅读全文
4 评论