阿博之前分享了Python的Dictonary数据类型,今天来分享Set数据类型。
注意:阿博的开发环境是Python3。
Set(集合)简介
Set数据类型,一般我们称为集合,是一个无序不重复的元素序列。日常的Set创建是通过{}或者set()函数创建集合。创建集合的时候需要注意的:
创建一个空集合必须要使用`set()`函数创建,因为使用`{}`是会创建一个空的字典出来。
创建Set(集合)的代码格式:
set1 = {value01,value02,...}set(value)
给集合添加元素
我们一般是通过add方法进行添加元素的,代码示例:
#!/usr/bin/python3# -*- coding: UTF-8 -*-set1 = {'阿博科技谈'}# 验证集合是否创建成功print(type(set1))# 在set1集合里面添加元素set1.add('阿博')# 输出集合查看元素print(set1)
代码输出结果是:
{'阿博', '阿博科技谈'}
移除元素
我们可以使用使用remove()方法,实现代码如下:
#!/usr/bin/python3# -*- coding: UTF-8 -*-set1 = {'阿博科技谈', '阿博', '科技谈'}# 验证集合是否创建成功print(type(set1))# 删除最后一个元素set1.remove('科技谈')# 打印删除后的集合print(set1)
代码运行结果:
{'阿博', '阿博科技谈'}
但是如果删除不存在的元素就会出现下面的错误:
KeyError: 'xxxx'
如果不想删除不存在的元素,程序出现报错的情况,我们可以使用discard方法,下面是代码示例:
#!/usr/bin/python3# -*- coding: UTF-8 -*-set1 = {'阿博科技谈', '阿博', '科技谈'}# 验证集合是否创建成功print(type(set1))# 删除最后一个元素set1.discard('-1')# 打印删除后的集合print(set1)
这样删除不存在的元素,就不会出现报错的情况。
常见的Python集合的内置方法
1. 计算元素个数:
len(s)
2.清空集合:
s.clear()
3.判断元素是否在集合中存在:
x in set
4.拷贝一个集合:
copy
5.返回多个集合的差集:
difference_update()
6.删除集合中指定的元素:
discard()
7.返回集合的交集:
intersection()
8.判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。
isdisjoint()
9.判断指定集合是否为该方法参数集合的子集。
issubset()
10.判断该方法的参数集合是否为指定集合的子集:
issuperset()
11.随机移除元素:
pop()
12.移除指定元素:
remove()
13. 返回两个集合中不重复的元素集合。
symmetric_difference()
14.移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。
symmetric_difference_update()
15.返回两个集合的并集:
union()
16.给集合添加元素:
update()