set集合玩法、三目运算
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集合玩法、三目运算的更多相关文章
- 【Python全栈笔记】03 [模块二] 16-17 Oct Set 集合,三目运算
Set 集合 set - unordered collections of unique elements 创建一个set/一个空set # create a new set set1 = {1,2, ...
- Python【集合】、【函数】、【三目运算】、【lambda】、【文件操作】
set集合: •集合的创建; set_1 = set() #方法一 set_1 = {''} #方法二 •set是无序,不重复的集合; set_1 = {'k1','k2','k3'} set_1.a ...
- python运算符,数据类型,数据类型操作,三目运算,深浅拷贝
算数运算符: Py2中精确除法需要导入:from __future__ import division,(符由特 ,将来的.滴未省,除法) py3不需要导入 赋值运算符: 比较运算符: 成员运算符: ...
- Python学习日记(五)——初识函数(set、深浅拷贝、三目运算、函数、全局变量和局部变量)
基本数据类型补充 set set集合,是一个无序且不重复的元素集合 #创建 s = {11,22,33,44}#类似字典 s = set() #转换 l = (11,22,33,44) s1 = se ...
- ng-class结合三目运算
ng-class文档:https://docs.angularjs.org/api/ng/directive/ngClass 但是在实际项目中可能会用到三目运算,实例如下: <ul> &l ...
- angularjs的三目运算
前言:前几天写代码的时候遇到一个问题,有一个按钮,有"已关注"和"+关注"两种状态,需要对这两种状态的按钮的背景颜色进行区分,单后点击"已关注&quo ...
- python函数,lambda表达式,三目运算,列表解析,递归
一.自定义函数 定义函数时,函数体不执行:只有在调用函数时,函数体才执行.函数的结构: 1. def 2. 函数名 3. 函数体 def func_name(): 函数体 4. 返回值 如果没有声明返 ...
- 三目运算的使用&bytes类型转str类型
一.三目运算的使用 就像c语言中有三目运算符一样,python中也有三目运算符,废话不多说直接上代码 a=3 c=4 b=a if a>c else c print(b) 意思就和 if a&g ...
- 三目运算:and/or 技巧
三目运算:and/or 技巧 and, or 联合起来有个小技巧: print 2 < 3 and True or False 说明: 如果 2 小于 3 了,则输出 True , ...
随机推荐
- Dijkstra算法:POJ No 3268 Silver Cow Party
题目:http://poj.org/problem?id=3268 题解:使用 priority_queue队列对dijkstra算法进行优化 #include <iostream> #i ...
- 51nod1471 小S的兴趣
题目来源: CodeForces 基准时间限制:1.5 秒 空间限制:131072 KB 分值: 320 小S喜欢有趣的事.但是,每个人的兴趣都是独特的.小S热衷于自问自答.有一天,小S想出了一个问题 ...
- 【BZOJ】2154: Crash的数字表格 莫比乌斯反演
[题意]给定n,m,求Σlcm(i,j),1<=i<=n,1<=j<=m,n,m<=10^7. [算法]数论(莫比乌斯反演) [题解] $$ans=\sum_{i\leq ...
- 下拉刷新和UITableView的section headerView冲突的原因分析与解决方案
UITableView:下拉刷新和上拉加载更多 [转载请注明出处] 本文将说明具有多个section的UITableView在使用下拉刷新机制时会遇到的问题及其解决方案. 工程地址在帖子最下方,只需要 ...
- CodeForces 990C
Description A bracket sequence is a string containing only characters "(" and ")" ...
- Mysql储存过程8:repeat循环
语法: repeat SQL until 条件 end repeat; 就是相当于其他语言中的: do{ # }while(); mysql> create procedure p1p() -& ...
- [003] largest_subarray_with_equal_1&0
[Description] Given an array with only '1' and '0', find a largest length sub-array which contains e ...
- 运维小知识之nginx---nginx配置Jboss集群负载均衡
codyl 2016-01-26 00:53:00 浏览385 评论0 负载均衡 转自 运维小知识之nginx---nginx配置Jboss集群负载均衡-博客-云栖社区-阿里云https://yq ...
- 匿名函数、lambda表达式
匿名函数 func = lambda x: y #x是形参,y是返回值 键字lambda表示匿名函数,冒号前面的x表示函数参数,冒号后面的y表示匿名函数的返回值. 例1:返回列表中长度大于等于3的元素 ...
- Java的BIO,NIO,AIO
Java中的IO操作可谓常见.在Java的IO体系中,常有些名词容易让人困惑不解.为此,先通俗地介绍下这些名词. 1 什么是同步? 2 什么是异步? 3 什么是阻塞? 4 什么是非阻塞? 5 什么是同 ...