set是无序的,无法用下标获取值

创建set二种方式

1、第一种

s1=set()   #创建一个空的set,看下面就知道为什么要这么创建一个空的集合

2、第二种

s2={11,22,33,44} #不仔细看有点想字典,如果s2={} 这个就是一个空的字典类型

增加集合add

>>> s1.add(11)
>>> s1
set([11])

清空集合内容

s.clear()

查找二个集合中不一样值

>>> a={11,22,33}
>>> b={22,33,44}
>>> a.difference(b)    #查找A比B多的
set([11])
>>> b.difference(a)  #查找B比A多的
set([44])

更新集合(B保留A集合中没有的值)

>>> a={11,22,33}

>>>b={33, 44, 22}

>>> b.difference_update(a)
>>> b
set([44])

删除一个指定集合元素,指定元素没有不报错

>>> a={11,22,33}
>>> a.discard(11)
>>> a
set([33, 22])

删除指定元素,没有报错

set([33, 22])
>>> a.remove(33)
>>> a
set([22])

获取二个集合的交集

>>> b={11,22,33,44}
>>> a={22,55,66}
>>> b.intersection(a)
set([22])

如果没有交集返回true,有交集返回falsse

>>> b={11,22,33,44}
>>> a={22}

>>> b.isdisjoint(a)
False

子序列和父序列

>>> a={11,22,33,44}
>>> b={11,22}

判断A是否是B的子序列,B不包含A所以不是

>>> a.issubset(b)
False

判断A是B的父序列,A包含B的所有值所以A是B的父序列

>>> a.issuperset(b)

True

移除后赋值

>>> b
set([11, 22])
>>> a=b.pop()
11

取出二个集合的对称交集(二个集合的差集)

>>> a
set([33, 11, 44, 22])
>>> b
set([66, 11, 22, 55])
>>> a.symmetric_difference(b)
set([33, 66, 44, 55])

symmetric_difference_update 和上面的_update效果一样

获取a和b的并集

>>> a={11,22,33,44,55}
>>> b={22,77,88,11}
>>> a.union(b)
set([33, 11, 44, 77, 22, 55, 88])

更新集合

>>> a={11,22,33,44,55}
>>> a.update([11,123,456,789]) #这就是 循环列表然后把数据增加进去
>>> a
set([33, 456, 11, 44, 789, 22, 55, 123])

三目运算

下面的语法完全可以用一句代码完成

if a==1:b=1

else:b=2

a==1条件成立就赋值1,不成立就是2

b=1 if a==1 else 2

set集合玩法、三目运算的更多相关文章

  1. 【Python全栈笔记】03 [模块二] 16-17 Oct Set 集合,三目运算

    Set 集合 set - unordered collections of unique elements 创建一个set/一个空set # create a new set set1 = {1,2, ...

  2. Python【集合】、【函数】、【三目运算】、【lambda】、【文件操作】

    set集合: •集合的创建; set_1 = set() #方法一 set_1 = {''} #方法二 •set是无序,不重复的集合; set_1 = {'k1','k2','k3'} set_1.a ...

  3. python运算符,数据类型,数据类型操作,三目运算,深浅拷贝

    算数运算符: Py2中精确除法需要导入:from __future__ import division,(符由特  ,将来的.滴未省,除法) py3不需要导入 赋值运算符: 比较运算符: 成员运算符: ...

  4. Python学习日记(五)——初识函数(set、深浅拷贝、三目运算、函数、全局变量和局部变量)

    基本数据类型补充 set set集合,是一个无序且不重复的元素集合 #创建 s = {11,22,33,44}#类似字典 s = set() #转换 l = (11,22,33,44) s1 = se ...

  5. ng-class结合三目运算

    ng-class文档:https://docs.angularjs.org/api/ng/directive/ngClass 但是在实际项目中可能会用到三目运算,实例如下: <ul> &l ...

  6. angularjs的三目运算

    前言:前几天写代码的时候遇到一个问题,有一个按钮,有"已关注"和"+关注"两种状态,需要对这两种状态的按钮的背景颜色进行区分,单后点击"已关注&quo ...

  7. python函数,lambda表达式,三目运算,列表解析,递归

    一.自定义函数 定义函数时,函数体不执行:只有在调用函数时,函数体才执行.函数的结构: 1. def 2. 函数名 3. 函数体 def func_name(): 函数体 4. 返回值 如果没有声明返 ...

  8. 三目运算的使用&bytes类型转str类型

    一.三目运算的使用 就像c语言中有三目运算符一样,python中也有三目运算符,废话不多说直接上代码 a=3 c=4 b=a if a>c else c print(b) 意思就和 if a&g ...

  9. 三目运算:and/or 技巧

    三目运算:and/or 技巧 and, or 联合起来有个小技巧: print 2 < 3 and True or False 说明:     如果  2 小于 3 了,则输出 True ,  ...

随机推荐

  1. select表单元素详解及下拉列表模拟实现

    原文地址:→看过来 写在前面 select 是HTML表单元素中很常用的一个,其中很重要的几个属性常被忽略,但这几个属性却能帮助我们完成很多的功能,当然,select下拉列表默认样式很不友好,所以更多 ...

  2. Counting Pair

    Counting Pair Time Limit: 1000 ms Memory Limit: 65535 kB Solved: 112 Tried: 1209 Submit Status Best ...

  3. JavaScript定义类的几种方式

    提起面向对象我们就能想到类,对象,封装,继承,多态.在<javaScript高级程序设计>(人民邮电出版社,曹力.张欣译.英文名字是:Professional JavaScript for ...

  4. python初步学习-面向对象之类(一)

    python 面向对象 python 从设计之初就已经是一门面向对象的语言,正因为如此,在python中创建一个类和对象是很容易的. 对象对象奇数简介 类(Class): 用于描述具有相同的属性和方法 ...

  5. idea 控制台乱码

    第一步:修改intellij idea配置文件: 找到intellij idea安装目录,bin文件夹下面idea64.exe.vmoptions和idea.exe.vmoptions这两个文件,分别 ...

  6. 70.如何在xilinx SDK中显示行号

    Window→preferences→editor→test editor 对ecilpse的通用方法 打开Eclipse软件,在菜单中选择窗口——首选项,打开新的窗口. 在新的窗口中依次选择常规—— ...

  7. kernel编译速度提高

    1. 使用tmpfs来代替部分IO读写 2. ccache,可以将ccache的缓存文件设置在tmpfs上,但是这样的话,每次开机后,ccache的缓存文件会丢失 3.distcc,多机器编译 4.将 ...

  8. koa中间层 文件下载的请求转发

    背景: 前端用a标签发起下载文档的get请求 node中间层接到get请求后将请求转发到java后端 java后端返回文档流传递给node中间层 好处: 后端的java业务逻辑层接口.数据库不向外部暴 ...

  9. UVA 1103 How Many O's?

    题目链接:UVA-11038 题意为给定n和m,求n和m之间(包含)的所有数包含的0的个数. 思路是,用cal(x)表示小于等于x的数包含的0的个数.则答案为cal(n)-cal(m-1). 再把求c ...

  10. 转 proc文件

    /proc 是一个伪文件系统, 被用作内核数据结构的接口, 而不仅仅是解释说明/dev/kmem. /proc 里的大多数文件都是只读的, 但也可以通过写一些文件来改变内核变量. 下面对整个 /pro ...