一、集合
1集合里面的元素不可重复
s = {
1, 1, 1, 1, 1, 3, 5, 67, 89}
print(s,type(s))
输出结果为:
{
1, 67, 3, 5, 89} <class 'set'>
2定义一个空集合
s1 = {
}
print(type(s1)) 默认情况下是dict
s2 = set([])
print(s2,type(s2))
输出结果为:
<class 'dict'>
set() <class 'set'>
3列表的快速去重
li = [1,23,4,5,6,6,6,7,8,9]
print(list(set(li)))
输出结果为:
[1, 4, 5, 6, 7, 8, 9, 23]
二、集合中的常用方法
集合是一个可变的数据类型
1添加顺序和存储顺序是不一样的
s = {
4,5,6,7,8,9,2}
print(s)
输出结果为:
{
2, 4, 5, 6, 7, 8, 9}
2添加
s.add(10)
print(s)
输出结果为:
{
2, 4, 5, 6, 7, 8, 9, 10}
3添加多个元素
s.update({
3,6,7,8})
print(s)
输出结果为:
{
2, 3, 4, 5, 6, 7, 8, 9, 10}
4删除
a = s.pop()
print(s)
print(a)
输出结果为:
{
3, 4, 5, 6, 7, 8, 9, 10}
2
5删除指定的元素
s.remove(9)
print(s)
输出结果为:
{
3, 4, 5, 6, 7, 8, 10}
6排序
s1 = {
2,3,1}
sorted(s1)
print(s1)
输出结果为:
{
1, 2, 3}
7并集
并集有两种方式:
s1 = {
2,3,1}
s2 = {
2,3,4}
print('并集:',s1.union(s2))
print('并集:',s1 | s2)
输出结果为:
并集: {
1, 2, 3, 4}
并集: {
1, 2, 3, 4}
8交集
交集有两种方式:
print('交集:',s1.intersection(s2))
print('交集:',s1 & s2)
输出结果为:
交集: {
2, 3}
交集: {
2, 3}
9差集
s1和s2的差集: s1中有哪些s2中没有的元素
print('差集:',s1.difference(s2))
print('差集:',s1 -s2)
输出结果为:
差集: {
1}
差集: {
1}
10 对等差分:并集- 交集
print('对等差分:',s1.symmetric_difference(s2))
print('对等差分:',s1 ^ s2)
输出结果为:
对等差分: {
1, 4}
对等差分: {
1, 4}
11 是否子集
s3是否是s4的子集:
s3 = {
'west','redhat','python'}
s4 = {
'redhat','west','linux'}
print(s3.issubset(s4))
输出结果为:
False
12 两个集合是不是不相交
print(s3.isdisjoint(s4))
输出结果为:
False
三、集合的特性
1成员操作符
s = {
1,2,3}
print(1 in s)
print(1 not in s)
输出结果为:
True
False
2for循环
for i in s:
print(i,end='')
print() #表示不换行
输出结果为:
123