精华内容
下载资源
问答
  • 1.3.1交集并集概念及性质.doc
  • Python入门基础篇 No.38 —— 集合_特点_创建和删除_交集并集差集运算 文章目录Python入门基础篇 No.38 —— 集合_特点_创建和删除_交集并集差集运算前言一、集合二、集合创建和删除1.使用{}创建集合对象,并使用 ...

    Python入门基础篇 No.38 —— 集合_特点_创建和删除_交集并集差集运算


    前生篇:字典_核心底层原理_内存分析_查找值对象过程

    后世篇:单分支选择结构_条件表达式详解

    小白不看都能懂:Python之真功夫系列(全章)


    前言

    在这里插入图片描述


    一、集合

    • 集合是无序可变,元素不能重复。实际上,集合底层是字典实现,集合的所有元素都是字典中的“键对象”,因此是不能重复的且唯一的。

    二、集合创建和删除

    1.使用{}创建集合对象,并使用 add()方法添加元素

    代码演示:

    >>> x = {2,4,5}
    >>> x
    {2, 4, 5}
    >>> x.add(0)
    >>> x
    {0, 2, 4, 5}
    >>> x.add(8)
    >>> x
    {0, 2, 4, 5, 8}
    >>> 
    

    2. 使用 set(),将列表、元组等可迭代对象转成集合。如果原来数据存在重复数据,则只保留一个。

    代码演示:

    >>> a = ['3','4','2','3']
    >>> b = set(a)
    >>> b
    {'3', '2', '4'}
    >>> 
    

    3.remove()删除指定元素;clear()清空整个集合

    代码演示:

    >>> x = {'a','s','c','b'}
    >>> x.remove('s')
    >>> x
    {'a', 'c', 'b'}
    >>> x.clear()
    >>> x
    set()
    

    在这里插入图片描述

    二、集合相关操作

    • 像数学中概念一样,Python 对集合也提供了并集、交集、差集等运算。我们给出示例:

    代码演示:

    >>> x = {1,2,'Offer','b'}
    >>> y = {1,3,'name','a'}
    >>> x|y  # 并集
    {1, 2, 3, 'a', 'b', 'Offer', 'name'}
    >>> x&y  # 交集
    {1}
    >>> x-y  # 差集
    {'Offer', 2, 'b'}
    >>> x.union(y)   # 并集
    {1, 2, 3, 'a', 'b', 'Offer', 'name'}
    >>> x.intersection(y)  # 交集
    {1}
    >>> x.difference(y)   # 差集
    {'Offer', 2, 'b'}
    >>> 
    

    总结

    以上帮各位总结好了,收藏,关注即可查收。

    前生篇:字典_核心底层原理_内存分析_查找值对象过程

    后世篇:单分支选择结构_条件表达式详解

    小白不看都能懂:Python之真功夫系列(全章)


    关注下方公众号,免费拿Python学习资料!!!

    在这里插入图片描述

    展开全文
  • 像数学中概念一样,Python也对结合提供了并集,交集,差集等运算 a = {1,2,3,4} b ={2,3,4,6} 使用符号 并集 交集 差集   使用函数 并集 交集 差集    

    集合是无序可变,元素不能重复.实际上,集合底层是字典的实现,集合所有元素都是字典中的"键对象",因此是不能重复的且唯一的

     

    集合创建和删除

     

    1.使用{}创建集合对象,并且使用add()方法添加元素

     

    2.使用set(),将列表,元组等可迭代对象转成集合.如果原来数据存在重复数据,则只能保留一个

     

    3.remove()删除指定元素;clear()清空整个集合

     

     

    集合相关操作

    像数学中概念一样,Python也对结合提供了并集,交集,差集等运算

    a = {1,2,3,4}

    b ={2,3,4,6}

    使用符号

    并集

    交集

    差集

     

    使用函数

    并集

    交集

    差集

     

     

    展开全文
  • clear()清空整个集合 >>> a = {10, 20, 30, 40, 50} >>> a.remove(20) >>> a {40, 10, 50, 30} 集合相关操作 像数学中概念一样,Python 对集合也提供了并集交集、差集等运算。我们给出示例: >>> a = {1,3,'...

    集合

    集合是无序可变,元素不能重复。实际上,集合底层是字典实现,集合的所有元素都是字典中的“键对象”,因此是不能重复的且唯一的。

     

    集合创建和删除

    1. 使用{}创建集合对象,并使用 add()方法添加元素

    >>> a = {3,5,7}

    >>> a

    {3, 5, 7}

    >>> a.add(9)

    >>> a

    {9, 3, 5, 7}

    2. 使用 set(),将列表、元组等可迭代对象转成集合。如果原来数据存在重复数据,则只保留一个。

    >>> a = ['a','b','c','b']

    >>> b = set(a)

    >>> b

    {'b', 'a', 'c'}

    Me:集合的这个特性可以用来去重。

    >>> c = list(b)

    >>> c

    ['c', 'a', 'b']

    3. remove()删除指定元素;clear()清空整个集合

    >>> a = {10, 20, 30, 40, 50}

    >>> a.remove(20)

    >>> a

    {40, 10, 50, 30}

     

    集合相关操作

    像数学中概念一样,Python 对集合也提供了并集、交集、差集等运算。我们给出示例:

    >>> a = {1,3,'xixi'}

    >>> b = {'he','it','xixi'}

    >>> a | b #并集

    {1, 3, 'xixi', 'he', 'it'}

    >>> a & b #交集

    {'xixi'}

    >>> a - b #差集

    {1, 3}

    >>> a.union(b) #并集

    {1, 3, 'xixi', 'he', 'it'}

    >>> a.intersection(b) #交集

    {'xixi'}

    >>> a.difference(b) #差集

    {1, 3}

     

    章节实操作业

    1. 画出代码 a = [100, 200, 300]的内存存储示意图。

    2. 使用 range 生成序列:30,40,50,60,70,80

    3. 推导式生成列表: a = [x * 2 for x in range(100) if x%9 == 0],手写出结果。

    4. 使用二维列表存储表格信息,并画出简单的内存存储示意图:

    姓名

    年龄

    薪资

    城市

    熊大

    20

    30000

    北京

    熊二

    19

    20000

    上海

    熊三

    18

    25000

    深圳

    5. 元组和列表有哪些共同点?有哪些不同点?

    6. 创建一个字典对象,包含如下信息:

    支出金额:300.15,支出日期:2018.10.18,支出人:小明

    7. 使用字典存储行数据,最后将整个表使用列表存储起来。

    姓名

    年龄

    薪资

    城市

    熊大

    20

    30000

    北京

    熊二

    19

    20000

    上海

    熊三

    18

    25000

    深圳

    8. 用文字和自己画的示意图描述:字典存储一个键值对的底层过程。

    9. 集合和字典有什么关系?

     

    我的解答:

    1

    内存存储示意图

    2

    代码:

    >>> list(range(30, 80, 10))

    [30, 40, 50, 60, 70]

    3

    [0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198]

    4

    代码:

    >>> tb = [

    ['姓名', '年龄', '薪资', '城市'],

    ['熊大', 20, 30000, '北京'],

    ['熊二', 19, 20000, '上海'],

    ['熊三', 18, 25000, '深圳']

    ]

    >>> tb[2][2]

    20000

     

    内存存储示意图:

    5

     

    列表

    元组

    相同点

    ①都是有序存储;

    ②都可以容纳各种不同类型的元素;

    ③都支持索引、切片等访问方式,都支持连接操作,都支持成员关系操作和比较运算操作、计数。

    不同点

    可修改,有增删修改方法。

    不可修改

    6

    代码:

    >>> a = {'amount': -300.15, 'date': 20181018, 'name': 'xiaoming'}

    >>> a

    {'amount': -300.15, 'date': 20181018, 'name': 'xiaoming'}

    7

    代码:

    >>> a = {'name': '熊大', 'age': 20, 'salary': 30000, 'city':'北京'}

    >>> b = {'name': '熊二', 'age': 19, 'salary': 20000, 'city':'上海'}

    >>> c = {'name': '熊三', 'age': 18, 'salary': 25000, 'city':'深圳'}

    >>> tb = [a, b, c]

    >>> tb[0].get('city')

    '北京'

     

    内存存储示意图:

    8

    字典储存键值对的过程是,假设我们要存储一个键值对{'name': 'xiaoming'},系统就会有一个散列表,这里假设这个散列表有4个位置。每个位置的左边格子存键的地址,右边格子存对应的值的地址。

    系统首先计算键值对的键的hash值,并转换成二进制。

    >>> bin(hash('name'))

    '0b1001111100100100100010111111001111110010110101001011010001110'

    散列表从上往下对应的位置的索引表示为00、01、10、11,然后把要存的这个键值对的键的hash二进制值从右向左两位两位地取到第1个二位是10,那么就会取查看散列表的10位置是否为空,为空则把这个键值对存到这个位置,不为空则取下一个二位,这里是11,查看11位是否为空,为空则存入,不为空则按上述规律循环,直到键值对存入。

    当散列表存满约三分之二的容量时,散列表会自动扩容,之前的散列表内容会按索引相应地存入扩容后的散列表中。

    示意流程图如下:

    9

    集合和字典的底层存储逻辑是一样的,相当于字典去掉键值对的值的功能。

    展开全文
  •  概念:后代选择器又叫包含选择器  为什么要用复合选择器?因为基础选择器不够强大,不能快速高效准确精细的完全页面style设置。复合选择器是两个或多个基础选择器组合而成的。  作用:用来选择元素或者元素的...

    ①后代选择器(重点)

      【空格隔开】

      概念:后代选择器又叫包含选择器

      为什么要用复合选择器?因为基础选择器不够强大,不能快速高效准确精细的完全页面style设置。复合选择器是两个或多个基础选择器组合而成的。

      作用:用来选择元素或者元素的子孙后代

      写法:把外层标签写在前面,内存标签写在后面,中间用空格分隔,先写爷爷父亲,再写儿子孙子。

      语法:父级 子级 {属性:属性值;属性:属性值}

      注:当标签发生嵌套时,内层标签就成了外层标签的后代标签

      后代选择器

     

    /*后代选择器*/
    /* 常山 赵子龙 */
    .nav a {
    	color:red;
    }
    .wang ul li {
    	color:red;
    }

      ②并集选择器(重点)

      【逗号隔开】

      如果某些选择器定义的样式是相同的样式,就可以利用并集选择器。可以让代码更简洁。并集选择器(css选择器分组)是各个选择器通过连接而成的。通常用于集体申明。

      任何基础选择器都能组合成并集选择器。

      记忆技巧:用于集体申明,各个选择器用“,”分隔。“,”可以理解成“和”的意思。

    并集选择器

     

    /*并集选择器*/
    p,div,.my {
    	color:red;
    }

      ③子元素选择器

      【 > 隔开】

      作用:只能选择某元素(亲儿子)的元素。

      写法:父亲标签写在前面 + > + 儿子标签 {}

      注意:子元素必须是亲儿子,不包含孙子重孙子之类的。

    子元素选择器

     

    /*子元素选择器*/
    div>strong {
    	color:red;
    }

      ④交集选择器

      【.号连接】

      条件:交集选择器由两个选择器组成。找到的标签必须满足:既有第一个标签的特点,又有第二个标签的特点。

      记忆技巧:交集是并且的意思,即是。。。又是。。。的意思。但通常用的不多,也不建议使用。

    交集选择器

     

    /*交集选择器*/
    <p class="red">红色</p>
    p.red {
    	color:red;
    }

    http://moban.shenhuangji.com/post/27.html 

    展开全文
  • 数组的交集,并集

    2020-11-22 13:09:27
    //数组的交集 并集 #include<iostream> using namespace std; //在a数组的a[0]到a[na - 1]个元素中找x //找到了返回其下标,找不到返回-1 int FindX(int* a, int na, int x) { int i; for (i = 0; i < ...
  • 主要和数学几个概念有关系,交集 并集 和差集。下面分别用代码来练习每一个集合算法。 算法简介: set_intersection //求两个容器的交集 set_union //求两个容器的并集 set_difference //求两个容器的差集 1.set...
  • 数组的交集并集

    2018-05-14 14:02:40
    let a = new Set([1, 2, 3]);...// 并集 let unionSet = new Set([...a, ...b]); //[1,2,3,5] // 交集 let intersectionSet = new Set([...a].filter(x =&gt; b.has(x))); // [2,3] // ab...
  • 并集交集、差集的概念 并集:属于A或属于B的集合是A与B的并集 交集:属于A且属于B的集合是A与B的交集 差集:属于A但不属于B的集合是A与B的差集 python实现求两个list的交集 假设两个list分别为a和b: way1:...
  • java的交集并集和差集

    千次阅读 2019-08-06 10:37:21
    需求:每隔几秒请求数据,并在地图展示。每次返回数据要和上一次数据进行比较。\n 要求:1.两次相同的留在地图,并进行点的移动;2.现在数据与上一次数据不一样的点要显示在地图上;3.上一次与现在数据不一样的点要...
  • mysql中交集并集,差集,左连接,右连接 参考地址:https://blog.csdn.net/mikefei007/article/details/53888100 MyBatis-动态SQL 参考地址:https://blog.csdn.net/qq_23955607/article/details/82025699 ...
  • C++归并求交集并集

    千次阅读 2010-06-15 15:12:00
    对于两个有序的元素序列,在归并操作中作适当的处理即可得到二者的交集并集,代码如下:   #include #include #include #include using namespace std; void vectorjiaoji(const vector& v1,const ...
  • 原博文2018-11-27 17:30 −前提:测试中需要给某些应用设置黑名单,所以从.txt文件中求两者的差集,就可以筛选出需要测试的应用 思路:将.txt文件中的数据读到list列表中,求列表的交集,再输出到指定目录 一....
  • 生成了两个List: A = ['apple','apple','banana'] B = ['banana','apple','banana'] 交集并集,差集概念这里不说,python代码如下: #! /usr/bin/env python # coding:utf-8 listA = [1, 2, 3, 4, 5, 6] lis...
  • STL算法-交集,并集,差集,对称差 2013年03月19日 14:43:02 聪明的笨蛋 阅读数:14912 STL算法-交集,并集,差集,对称差 版权声明:本文为博主原创文章,未经博主允许不得转载。 ...
  • 两个数组的交集和差集 let intersection = a.filter(v => b.includes(v)) let difference = a.concat(b).filter(v => !a.includes(v) || !b.includes(v))
  • 并集:以属于A或属于B的元素为元素的集合成为A与B的并(集) 交集:以属于A且属于B的元素为元素的集合成为A与B的交(集) 差:以属于A而不属于B的元素为元素的集合成为A与B的差(集) public class A { ...
  • python 求两个矩阵的交集并集和补集 https://blog.csdn.net/u012759006/article/details/89642025?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.edu_weight&depth...
  • 并集交集、差集的概念可以自行百度。下面是我画的一张图,能让你更加生动形象理解概念。 代码如下:public static void main(String[] args) { List&lt;String&gt; list1 = new ArrayList&lt;String...
  • 1. 对于两个或者多个(个数确定)数组取交并集非常简单,通过内置函数 2. 二维数组取交并集,我们可以循环法: 3. 但是如果一个需求是,...这时候你不可方便的建立N层循环来进行取交集,引入一个以空间换时间的概念
  • 理解两个集合交集并集概念和性质 求两个集合的交集并集常用方法-——数轴法和图示法. 观察集合A,B,C元素间的关系: A={4,5,6,8} ,B={3,5,7,8} ,C={3,4,5,6,7,8} A={x|x是有理数},B={x|x是...
  • 针对它们做的最多的操作就是求交集,并集,差集,对称差集.不过集合有个特性就是不能有重复的元素. 而STL中的算法中的交并集,所用到的容器不一定要是不能有重复元素.并集等的结果是排好序的一个集合.默认是通过容器...
  • 一、交集并集、差集和补集的概念 注意:在集合论和数学的其他分支中,存在补集的两种定义:相对补集和绝对补集。 1、相对补集 若A 和B 是集合,则A 在B 中的相对补集是这样一个集合:其元素属于B但不属于A,B -...
  • 创建集合set、集合set添加、集合删除、交集并集、差集的操作都是非常实用的方法。 1.创建集合set &amp;gt;&amp;gt;&amp;gt;set('boy') set(['y', 'b', 'o']) 2.集合添加、删除 Python 集合set...
  • 创建集合set、集合set添加、集合删除、交集并集、差集的操作都是非常实用的方法。1.创建集合set类是在python的sets模块中,大家现在使用的python2.3中,不需要导入sets模块可以直接创建集合。&gt;&gt;&...
  • C++ 求两个集合的交集并集

    万次阅读 2017-06-18 22:23:26
    看紫书看到的 先学会用法吧,具体的以后看C++ Primer #include using namespace std;...set<int> s1{1,2,3,5};... set_union(s1.begin(),s1.end()...这是求两个集合的并集交集就是set_intersection()

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 17,404
精华内容 6,961
关键字:

交集并集的概念