#################################################
# 集合的作用是:
# 1、获得两个集合之间某种关系的集合(比如求两个集合的交集)
# 2、计算集合之间的关系(比如判断是否交集) 红色为常用重点方法
#################################################


####### 列表转集合,去重 #######
list_1 = set([1,2,3,4,5,6,7,2,3])
list_2 = set([2,3,5,10]) ####### 取得交集 ####### print("交集",list_1.intersection(list_2))
print("交集",list_1 & list_2) ####### 取得并集(加集) #######
print("合集",list_1.union(list_2))
print("合集",list_1 | list_2) ####### 取得差集(集合1里面有,集合2里面没有的) #######
print("差集",list_1.difference(list_2))
print("差集",list_1 - list_2) ####### 取得对称差集(两个集合中都没有的返回) #######
print("对称差集",list_1.symmetric_difference(list_2))
print("对称差集",list_1 ^ list_2) ####### 是不是子集 #######
list_2 = [7,2,3]
list_2 = set(list_2)
print("判断是不是子集",list_2.issubset(list_1)) ####### 是不是父集 #######
list_1 = set([7,2,3,1,2,3])
list_2 =set( [7,2,3])
print("判断是不是父集",list_1.issuperset(list_2)) ####### 判断是不是有交集,没有交集返回false #######
list_1 = set([7,2,3,1,2,3])
list_2 =set( [7,2,3])
print("判断是不是有交集",list_1.isdisjoint(list_2)) ######################## 以下是增、删、改、查的操作 ############################## ####### 增 #######
list_1 = set([1,2,3,4,5,6])
list_1.add("111")
print("增一个项",list_1)
list_1.update([100,6,300])
print("增多个项,已经有的将不插入",list_1)
# list_1.copy() # 浅复制 ####### 删 #######
list_1 = set([1,2,3,4,5,6])
list_1.remove(1) #删除某个成员,如果不是成员会报错
print("删除某个成员,如果不是成员会报错",list_1)
list_1.pop()
print("删除随机一个项",list_1)
#删除某个成员,如果不是成员不会报错,无论成功与否都返回None
print("删除某个成员,如果不是成员不会报错",list_1.discard(3)) ####### 改 ####### # 从a中删除b中的所有元素后返回给a
list_1 = set([1,2,3,4,5,6])
list_2 = set([1,2])
list_1.difference_update(list_2)
print("从a中删除b中的所有元素",list_1) # 用a和b的交集更新a
list_1 = set([1,2,3,4,5,6])
list_2 = set([1,2,100])
list_2.intersection_update(list_1)
print("用a和b的交集更新a",list_2) # 用a和b的对称集更新a
list_1 = set([1,2,3,4,5,6])
list_2 = set([1,2,100])
list_1.symmetric_difference_update(list_2)
print("用a和b的对称集更新a",list_1) ####### 查 #######
list_1 = set([1,2,3,4,5,6])
print("集合的元素数量", len(list_1))
i = 1
print("测试x是否是y的成员", i in list_1)
i = 100
print("测试x是否不是y的成员", i not in list_1)

Python学习笔记:set集合类型所有方法汇总的更多相关文章

  1. Python学习笔记:String类型所有方法汇总

    # 按字母表熟悉下string中的方法# A B C D E F G H I J K L M N O P Q R S T U V W X Y Z# 标红的为常用重点的方法!! str = " ...

  2. Python学习笔记:List类型所有方法汇总

    ###############################红色标红的部分为常用方法############################### import copy names = [&quo ...

  3. 【Python学习之四】集合类型

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 python3.6 一.字符串:字符串实际上就是字符的数组1.切片是指 ...

  4. 【Python学习笔记】集合

    概述 集合的一般操作 内建函数进行标准操作集合 数学运算符进行标准操作集合 集合的应用 概述 python的集合(set)是无序不重复元素集,是一种容器.集合(set)中的元素必须是不可变对象,即可用 ...

  5. python学习笔记整理——集合 set

    python学习整理笔记--集合 set 集合的用途:成员测试和消除重复的条目,进行集合运算 注意:花括号或set()函数可以用于创建集合. 注意:若要创建一个空的集合你必须使用set(),不能用{} ...

  6. (转)python学习笔记4--数字类型与操作符

    原文:https://blog.csdn.net/lemonwyc/article/details/37558269 1. 同时赋值(Simultaneous Assignments) python支 ...

  7. python学习笔记(集合的使用)

    集合 集合(set):把不同的元素组成一起形成集合,是python基本的数据类型. 集合元素(set elements):组成集合的成员 为什么需要集合? 集合的作用 1 .列表去重复数据 按照现有知 ...

  8. python学习笔记(7)——集合(set)

    关键词#1.定义:无序不重复元素集, 基本功能包括关系测试和消除重复元素. 2.关键词:类似dict.只有key无value.常用于集合类数学运算. 3.创建 s=set() #入参可以是list.t ...

  9. Python学习笔记-Day3-set集合操作

    set集合,是一个无序且不重复的元素集合.定义方式类似字典使用{}创建 目前我们学过的数据类型: 1.字符串(str),2.整型(int),3.浮点型(float),4,列表(list) 5.元组(t ...

随机推荐

  1. CentOS7.5源码编译安装mysql5.7.29

    #查看系统版本 [root@ctos3 ~]# cat /etc/redhat-release CentOS Linux release (Core) #下载源码包,需要注意的是mysql5.7 编译 ...

  2. 编写简单i18n库

    i18n是什么?i18n(其来源是英文单词internationalization的首末字符i和n,18为中间的字符数)是"国际化"的简称. 前言 第一次接触多语言是用野生java ...

  3. 前端开发--vue开发部分报错指南

    前期开发过程中 [Vue warn]: Error in render: "TypeError: Cannot read property '0' of undefined". 解 ...

  4. UIButton左边图片右边文字的做法

    UIImage *yuyinImage = [UIImage imageNamed:@"yuyin.png"]; [soundButton setImage:yuyinImage ...

  5. 使用Navicat Premiun远程连接MySQL失败,报错(10038)

    远程连接MySQL失败,可能有一下原因: 1.小伙子/小姑凉注意一下你的ip是否输入正确了!! 2.网络或防火墙问题 1).排查网络问题 使用命令:ping 192.168.1.1 查看网络请求是否超 ...

  6. 使用synchronized修饰静态方法和非静态方法有什么区别

    前言 最近被问到了这个问题,第一次回答的也是很不好,在此参考网上答案进行整理记录.供大家学习参考. Synchronized修饰非静态方法 Synchronized修饰非静态方法,实际上是对调用该方法 ...

  7. VWware Workstation 安装CentOS系统

    VWware Workstation 安装CentOS系统 下载CentOS系统镜像: 官方地址:https://www.centos.org/download/mirrors/ 在此可选择华为云服务 ...

  8. git基础教程(八)

    8. gitlab相关介绍 8.1 gitlab优势 社区版本,自己可以在公司搭建环境 维护人员多,版本更新块 易用性强,上手快 集成CI(持续集成) 集成CD(持续发布) 8.2 持续集成 8.2. ...

  9. Ubuntu18.04 从头开始编译 Android Native WebRTC

    本文详细记录Mac下使用PD虚拟机安装ubuntu18.4桌面版,编译Android Native WebRTC的过程. 注意如果仅仅是使用WebRTC没必要手动编译源码,直接用官方提供的预编译包即可 ...

  10. 深入理解requestAnimationFrame并实现相册组件中的切换动画

    全手打原创,转载请标明出处:https://www.cnblogs.com/dreamsqin/p/12529885.html,多谢,=.=~ (如果对你有帮助的话请帮我点个赞啦) 通常情况下,我们利 ...