set 数据类型

  • set 与列表类似,区别在于 set 不能包含重复的值。
In [1]: a_list = ['a', 'b', 'c', 'b', 'd', 'm', 'n', 'n']

In [2]: b = set(a_list)

In [3]: b
Out[3]: {'a', 'b', 'c', 'd', 'm', 'n'} In [4]: type(b)
Out[4]: set
  • set 获取重复的元素
In [7]: a_list = ['a', 'b', 'c', 'b', 'd', 'm', 'n', 'n']

In [8]: b = set([i for i in a_list if a_list.count(i) > 1])

In [9]: b
Out[9]: {'b', 'n'}
  • set 为集合,集合可取交集,集合运算很快,性能很好
In [10]: a_list = ['a', 'b', 'c', 'b', 'd', 'm', 'n', 'n']

In [11]: b_list = ['a', 'c']

In [12]: c = set(a_list).intersection(set(b_list))

In [13]: c
Out[13]: {'a', 'c'}

set 类型调用 intersection 取2个集合的交集

  • set 为集合,集合可取差集,集合运算很快,性能很好
In [20]: a_set = set(['a', 'b', 'c', 'b', 'd', 'm', 'n', 'n'])

In [21]:  b_set = set(['a', 'c', 'f', 'g'])

In [22]: b_set.difference(a_set)
Out[22]: {'f', 'g'}

set 类型调用 difference, 获取元素在 b_set 不在 a_set 的数据

set 集合数据类型的更多相关文章

  1. page74-泛型可迭代的基础集合数据类型的API-Bag+Queue+Stack

    [泛型可迭代的基础集合数据类型的API] 背包:就是一种不支持从中删除元素的集合数据类型——它的目的就是帮助用例收集元素并迭代遍历所有收集到的元素.(用例也可以检查背包是否为空, 或者获取背包中元素的 ...

  2. 【python之路11】集合数据类型(set)

    集合数据类型(set):集合是不重复的无需序列 1.集合数据类型的创建 a = {11,22,33} #或 a = set() #创建空集合,不能用a={},这样创建的是字典类型 2.集合转换(将可迭 ...

  3. Hive集合数据类型

    Hive的列除了支持基本的数据类型外,还支持使用Struct.Map和Array三种集合数据类型. 假设某表有如下一行,我们用JSON格式来表示其数据结构.在Hive下访问的格式为 { "n ...

  4. hadoop之hive集合数据类型

    除了string,boolean,date等基本数据类型之外,hive还支持三种高级数据类型: 1.ARRAY ARRAY类型是由一系列相同数据类型的元素组成,这些元素可以通过下标来访问.比如有一个A ...

  5. Hive中的集合数据类型

    除了使用础的数据类型string等,Hive中的列支持使用struct, map, array集合数据类型. 数据类型 描述 语法示例 STRUCT 和C语言中的struct或者"对象&qu ...

  6. 面试官:Redis中集合数据类型的内部实现方式是什么?

    虽然已经是阳春三月,但骑着共享单车骑了这么远,还有有点冷的.我搓了搓的被冻的麻木的手,对着前台的小姐姐说:"您好,我是来面试的."小姐姐问:"您好,您叫什么名字?&quo ...

  7. Java集合数据类型

    Java集合如Map.Set.List等所有集合只能存放引用类型数据,它们都是存放引用类型数据的容器,不能存放如int.long.float.double等基础类型的数据. 1. 集合存储对象 Jav ...

  8. set(集合)数据类型【七】

    一.概述:(类似于Java的Set,不允许有重复元素) 在Redis中,我们可以将Set类型看作为没有排序的字符集合,和List类型一样,我们也可以在该类型的数据值上执行添加.删除或判断某一元素是否存 ...

  9. zset(sorted set:有序集合)数据类型【八】

    一.概述:(zset) Sorted-Sets和Sets类型极为相似,它们都是字符串的集合,都不允许重复的成员出现在一个Set中.它们之间的主要差别是Sorted-Sets中的每一个成员都会有一个分数 ...

随机推荐

  1. php使用curl库进行ssl双向认证

    官方文档: http://www.php.net/manual/zh/function.curl-setopt.php#10692 官方举例: <?phpcurl_setopt($ch, CUR ...

  2. Spring cloud config-client 爬坑

    配置文件 找不到属性 Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'from' in st ...

  3. 15 并发编程-(IO模型)

    一.IO模型介绍 1.阻塞与非阻塞指的是程序的两种运行状态 阻塞:遇到IO就发生阻塞,程序一旦遇到阻塞操作就会停在原地,并且立刻释放CPU资源 非阻塞(就绪态或运行态):没有遇到IO操作,或者通过某种 ...

  4. quicker+.em SourceInsight 宏加强版制作

    这两天苦于新建的文件每次都要手动添加文件头,新建的函数每次都要手动添加函数说明,连.h也要手动生成.于是乎,上网搜了搜,发现了lushengwen写的一个神器:quicker.em .好家伙,有了这个 ...

  5. LeetCode之二叉树作题java

    100. Same Tree Total Accepted: 127501 Total Submissions: 294584 Difficulty: Easy Given two binary tr ...

  6. 【Git】四、Git工作

    一.Git创建仓库 版本库:代码仓库(repository),可以理解为一个项目的目录,在这个项目的目录中Git对每个文件进行管理,记录每个文件的增删改查记录,并能够追踪历史,在需要的时候可以回退到某 ...

  7. 实例: Java代码操作oracle数据库(JDBC+sevrlet+jsp+html)

    1, 注册页面 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN" "http://www.w3.or ...

  8. sqlserver2008事物处理---待续

    声明事物:begin tran 回滚事物:ROLLBACK TRAN 提交事物:commit tran(不写会隐式提交) 判断是否发生异常: 结束前: IF @@ERROR <> 0 BE ...

  9. ASP.NET文件上传大小限制

    上传限制 我们以为的文件大小限制 我们大家都知道ASP.NET为我们提供了文件上传服务器控件FileUpload,默认情况下可上传的最大文件为4M,如果要改变可上传文件大小限制,那么我们可以在web. ...

  10. 关于Yii2.0的url路径优化问题(配置虚拟路径)

    backend/config/main.php 'urlManager' => [ 'enablePrettyUrl' => true, 'showScriptName' => fa ...