1集合是一个无序的,不重复的数据组合,它的主要作用如下(set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key):

  去重,把一个列表变成集合,就自动去重了

  关系测试,测试两组数据之前的交集、差集、并集等关系

2(去重)

 # -*- coding:utf-8 -*-
s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
print(type(s))
print(s)

输出结果:

 <class 'set'>
{1, 2, 3, 4, 5, 'tin', 12, ('tj', 120)}

(关系测试)

交集:

 # -*- coding:utf-8 -*-
s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
#交集,把相同的元素取出来
print(s2.intersecti(s)) #或 print(s2 & s)

输出结果:

{4, 5}

并集

 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,} #并集
print(s2.union(s)) #或 print(s2 | s)

输出结果:

{1, 2, 3, 4, 5, 6, 7, 8, ('tj', 120), 12, 'tin', 23, 123}

差集

 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,} #差集
print(s2.difference(s)) # 或 print(s2-s)

输出结果:

{6, 7, 8, 23, 123}

对称差集

 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
print(s2.symmetric_difference(s)) #或 print(s2 ^ s)

输入结果:

{1, 2, 3, 6, 7, 8, 12, 'tin', 23, ('tj', 120), 123}

随机删除元素:

 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
print(s2.pop()) #pop 随机删除元素

输出结果:4

删除元素(可以任意删除一项):

 s2={123,23,4,5,6,7,8,}
s.remove(2)
print(s)

输出结果:

{1, 3, 4, 5, 'tin', 12, ('tj', 120)}

父集:

 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
s.remove(2)
print(s)
print(s2.issuperset(s))

输出结果:

 {1, 3, 4, 5, 12, ('tj', 120), 'tin'}
False

子集:

 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
s.remove(2)
print(s)
print(s2.issubset(s))

输出结果:

 {1, 3, 4, 5, 'tin', 12, ('tj', 120)}
False

对称并集:

 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
s.remove(2)
print(s)
s2.difference_update(s)
print(s2)

输出结果:

 {'tin', 1, 3, 4, 5, ('tj', 120), 12}
{6, 7, 8, 23, 123}

添加元素:

 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
s2.add(18)
print(s2)
s.add(21)
print(s)

输出结果:

 {4, 5, 6, 7, 8, 18, 23, 123}
{('tj', 120), 1, 2, 3, 4, 5, 12, 'tin', 21}

合并多项元素:

 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
s.update(s2)
print(s)

输出结果:

{1, 2, 3, 4, 5, 6, 7, 8, 12, 23, 'tin', 123, ('tj', 120)}

关系测试# 或 print(s2-s)Python 集合的更多相关文章

  1. python集合类型

    集合类型简介 集合也是容器,其内元素都是无序.唯一.不可变的.它常用来做成员测试.移除重复数据.数据计算(比如交集.并集.差集). 集合Set是dict的无value版.集合也使用大括号包围: > ...

  2. Python 集合set添加删除、交集、并集、集合操作符号

    在Python中集合set是基本数据类型的一种,它有可变集合(set)和不可变集合(frozenset)两种.创建集合set.集合set添加.集合删除.交集.并集.差集的操作都是非常实用的方法. 1. ...

  3. python 全栈开发,Day7(元组转换,列表以及字典的坑,集合,关系测试,深浅copy,编码补充)

    一.元组转换 数字 tu = (1) tu1 = (1,) print(tu,type(tu)) print(tu1,type(tu1)) 执行输出: 1 <class 'int'>(1, ...

  4. python语言(二)列表、字典、集合、文件读写、关系测试

    1.列表 list   代码 s = '王宇建,苏红,邹存才...' # 列表 数字 list l = ['王宇建','苏红','邹存才'] # 一维数组 二维数组 三维数组 # 0 1 2 # 索引 ...

  5. Python 集合的各种操作 数学运算 关系操作 增删改查 生成式

    # 集合是无序的 是可变的 不能重复 允许数学运算 分散存储 # 创建# collegel = {'哲学','经济学','法学','教育学'}## # {'教育学', '经济学', '法学', '哲学 ...

  6. Python 集合(set)使用

    1.python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差 ...

  7. python 集合set

    python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和 ...

  8. python 集合相关操作

    集合相关操作 集合是一个无序的,不重复的数据组合,它有着两个主要作用:去重以及关系测试. 去重指的是当把一个列表变成了集合,其中重复的内容就自动的被去掉了 关系测试指的是,测试两组数据之间的交集.差集 ...

  9. python集合相关操作

    集合相关操作 集合是一个无序的,不重复的数据组合,它有着两个主要作用:去重以及关系测试. 去重指的是当把一个列表变成了集合,其中重复的内容就自动的被去掉了 关系测试指的是,测试两组数据之间的交集.差集 ...

随机推荐

  1. Java复习 之多线程

    线程是一个程序中的不同路径 例子1 只有一条路径 每一个分支都是一个线程 实际上在一个时刻内 电脑只能运行一个进程 但是因为cpu运算速度很快 将时间分出来了 所以我们感觉是同时运行 创建线程的两种方 ...

  2. python抽象方法

    1.抽象方法的概念 之前我们定义一个基类的时候,如果要求子类必须重写父类中的某一个方法,可以这样做: 定义一个名为Pizza的基类,让其get_radius方法必须被子类继承 class Pizza( ...

  3. 前端CSS3笔记

    第1章CSS3简介 如同人类的的进化一样,CSS3是CSS2的“进化”版本,在CSS2基础上,增强或新增了许多特性, 弥补了CSS2的众多不足之处,使得Web开发变得更为高效和便捷. 1.1   CS ...

  4. DBCC维护语句语法

    一.DBCC维护语句:对数据库.索引或文件组进行维护的任务--1.DBCC CLEANTABLE,回收删除的可变长度列和文本列的空间 DBCC CLEANTABLE  ( { 'database_na ...

  5. Java中的IO流(一)

    一,IO流的分类 A,按照操作的对象不同可分为字节流与字符流 B,按照流的方向不同可分为输入(指从外部存储设备拿文件到内存)流也叫读与输出(指从内存把文件写入到外部存储设备)流也叫写 注:字节流可以操 ...

  6. flashfxp key密钥

    flashfxp3.41中文版注册码:(适合最新版本) 推荐(尚未被封的 Realkey) FLASHFXPvACq2ssbvAAAAAC1W7cJKQTzmx77zmqJICvA7d3WnUtWNX ...

  7. ss源码学习--工作流程

    ss的local端和server端的工作流程相似,因此复用了TCPRelay类和TCPRelayHandler类. 两端均是使用TCPRelay类监听连接,并使用TCPRelayHandler类处理请 ...

  8. PHP判断是否都是中文

         {               }       }

  9. 文本工具 TextUtils 字符串

    常用方法: isEmpty:判断字符串是否为空值 getTrimmedLength:获取字符串去除头尾空格之后的长度 isDigitsOnly:判断字符串是否全部由数字组成 ellipsize:如果字 ...

  10. Class语法糖

    TypeScript源码 class A { hello() { } } class B extends A{ welcome() { } } TypeScript编译 var __extends = ...