集合是一个无序、不重复的数据集合,它的主要作用如下:

  • 去重:把一个列表变成集合,就可以去除重复的内容
  • 关系测试:测试两组数据之间的交集、并集、差集等关系

集合常用的操作:

#创建一个数值集合
s=set([99,1,23,8,4,7])
print('s=',s)
#创建一个唯一字符的集合
t=set('MyPython')
print('t=',t)
#把一列表变成集合,验证去重功能
list=[5,2,7,36,2,5,111]
list2set=set(list)
print('列表变成集合后为:',list2set)
#交集
#求交集、并集时集合前后顺序无所谓
set1=set([3,5,7,9,12,0])
set2=set([1,2,3,6,8,9])
#s1与s2结果一样。求交集的两种算法都可以
s1=set1.intersection(set2)
s2=set1&set2
print('set1=',set1)
print('set2=',set2)
print('set1与set2的交集是:',s1,s2)
#并集
#union()=|
s3=set1.union(set2)
s4=set2|set1
print('set1与set2的并集是:',s3,s4)
#差集
print('***********求set1与set2的差集***********')
print('set1=%s\nset2=%s\n'%(set1,set2))
s5=set1.difference(set2)#求差集(数值在set1中,但不在set2中)
s6=set2.difference(set1)#求差集(数值在set2中,但不在set1中)
s7=set1-set2 #求差集(数值在set1中,但不在set2中)
s8=set2-set1 #求差集(数值在set2中,但不在set1中)
print('s5=%s\n'%s5,'S6=%s\n'%s6,'s7=%s\n'%s7,'s8=%s\n'%s8) #对称差集
print("*************求对称差集**************")
s9=set1.symmetric_difference(set2)
s10=set1^set2
print('set1与set2的对称差集是:',s9,s10) #基本操作
set1.remove(3)#删除set1中的一项3
print(set1)
set1.update([66.77,88,99])#在set2中添加三个数值
print(set1) len(set1)#求set1的长度
#x in set1 #测试x是否是set1的成员
#x not in set1 #子集 超集
a=set([2,3,4,5,9])
b=set([2,3,5])
c=set([44,2,7,5,12,3])
print(a.issuperset(b))
print(b.issuperset(a))
print(b.issubset(a))
print(b.issubset(c))
print(a>=b)
print(a<=b)
print(b<=c)
print(b>=c)

  

Python基础学习之集合的更多相关文章

  1. python基础学习1-SET 集合

    # -*- coding:utf-8 -*- set集合 无序不重复的序列 se = {"a","b","c"} #创建SET集合 prin ...

  2. python基础学习之集合set

    .集合:set 特点:无序,不可重复(自动去重),可更改,可以与元组.列表互相转换 格式:s = {'x','y','z'} 转换:(转回用set) s = {'x','y','z'}        ...

  3. (一)python基础学习

    根据廖雪峰老师的python教程写一些学习总结! Python基础学习 1.使用list和tuple (1)list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时 ...

  4. Python基础学习五

    Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出 ...

  5. Python基础学习三

    Python基础学习三 1.列表与元组 len()函数:可以获取列表的元素个数. append()函数:用于在列表的最后添加元素. sort()函数:用于排序元素 insert()函数:用于在指定位置 ...

  6. python基础学习8

    python基础学习8 内容概要 字典的内置方法 元组的内置方法 集合的内置方法 垃圾回收机制 内容详情 字典的内置方法 一.类型转换 res = dict(name='jason', pwd=123 ...

  7. python基础学习7

    python基础学习7 内容概要 字符串的内置方法 字符串的内置方法(补充) 列表的内置方法 可变类型与不可变类型 队列与堆栈 内容详情 字符串的内置方法 # 1.strip 移除字符串首尾的指定字符 ...

  8. Day1 Python基础学习

    一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...

  9. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

随机推荐

  1. Codeforces - 151C 质因子分解

    显然只需要能跑到第二个因子就赢了 需要特判非平凡因子 常数优化:不用求出所有因子,跑完第二个素数就行了 #include<bits/stdc++.h> using namespace st ...

  2. 10.Spring集成一

    1.Email 电子邮件工作原理: 邮件发送方通过邮件发送客户端把邮件发送到发送方的邮件服务器,在发送的过程中需要用到SMTP协议发送方的邮件服务器把邮件发送到接收方的邮件服务器,使用的协议也是SMT ...

  3. CSS background 属性全家桶

    介绍我们都知道css的background属性是一个复合属性,可以简写成一行代码,也可以将每个属性分开来写. background 简写属性在一个声明中设置所有的背景属性.如:body{ backgr ...

  4. php和c++自带的排序算法

    PHP的 sort() 排序算法与 C++的 sort() 排序算法均为不稳定的排序算法,也就是说,两个值相同的数经过排序后,两者比较过程中还进行了交换位置,后期开发应主要这个问题

  5. ssis error at other ssis.pipeline "ole db destination" failed validation and returned validation status

    我在修改一个ssis的包,发现这个destination的表被改过了.所以就重建了表.就导致了这个错误. 打开包重新检查下表结构的匹配就好了

  6. vue router-link 添加在定义事件

    在vue学习中遇到给router-link 标签添加事件@click .@mouseover等无效的情况 我想要做的是v-for遍历出来的选项卡, 鼠标移上去出现删除标签,移除标签消失的效果 原代码: ...

  7. LeetCode 303.区域检索-数组不可变(accumulate()和for循环差异分析)

    给定一个整数数组  nums,求出数组从索引 i 到 j  (i ≤ j) 范围内元素的总和,包含 i,  j 两点. 示例: 给定 nums = [-2, 0, 3, -5, 2, -1],求和函数 ...

  8. eclipse maven程序包org.junit不存在

    今天使用maven打包项目的时候出现下面的错误,提示org.junit不存在. 错误信息内容如下: [ERROR] /Users/aven/Documents/workspace/share/src/ ...

  9. 文本框只允许输入数字.net/javascript

    <input type="text" name="test" onKeyUp="test1.value=(this.value=this.val ...

  10. 学习JVM-GC原理

    1. 前言 Java和C++之间显著的一个区别就是对内存的管理.和C++把内存管理的权利赋予给开发人员的方式不同,Java拥有一套自动的内存回收系统(Garbage Collection,GC)简称G ...