set集合:

特点:无序,元素不重复

功能:关系测试,去重

集合创建:

>>> s  = set('python')
>>> s
{'p', 't', 'y', 'h', 'o', 'n'} >>> l1 = ['python','pingy']
>>> s = set(l1)
>>> s
{'pingy', 'python'} >>> s = set('hello')
>>> s
{'h', 'e', 'l', 'o'} #'hello'中有两个'l',集合会去掉重复的元素。

集合修改:

.add:增加元素

.update:更一个新集合到另外一个集合

>>> s = set('python')
>>> s
{'p', 't', 'y', 'h', 'o', 'n'}
>>> s.add('abc') #增加元素
>>> s
{'p', 't', 'y', 'abc', 'h', 'o', 'n'} >>> s.update('bcd')
>>> s
{'p', 't', 'y', 'abc', 'c', 'b', 'd', 'h', 'o', 'n'} >>> se = set('linux')
>>> se
{'i', 'x', 'u', 'l', 'n'}
>>> s.update(se) #把se集合更新到s集合中
>>> s
{'p', 'u', 't', 'y', 'x', 'abc', 'c', 'b', 'd', 'i', 'h', 'l', 'o', 'n'}

集合删除:

.remove:删除指定元素

del:删除整个集合

.pop:随机删除一个元素

.clear:清空集合

>>> s
{'p', 'u', 't', 'y', 'x', 'abc', 'c', 'b', 'd', 'i', 'h', 'l', 'o', 'n'}
>>> s.remove('abc') #删除指定元素
>>> s
{'p', 'u', 't', 'y', 'x', 'c', 'b', 'd', 'i', 'h', 'l', 'o', 'n'} >>> se
{'i', 'x', 'u', 'l', 'n'}
>>> del se #删除集合
>>> s1
{'a', 'm', 'n'}
>>> s1.clear() #清空集合
>>> s1
set()

集合类型操作:

in  not in:

==  !=

< >

>>> s1
{'a', 'm', 'n'}
>>> s2
{'a', 'm', 'o', 'w', 'n'}
>>> s1<s2
True

&:交集

|:并集

-:差集

^:对称差集(去掉两个集合中的交集,留下剩下的元素的集合)

>>> s1
{'a', 'm', 'n'}
>>> s2
{'a', 'm', 'o', 'w', 'n'}
>>> s1<s2
True
>>> s1 & s2 #交集
{'a', 'm', 'n'}
>>> s1 | s2 #并集
{'w', 'a', 'm', 'o', 'n'}
>>> s2 -s1 #差集
{'w', 'o'}

例:列表去重

>>> l = [1,2,3,4,5,6,4,3,6,7,9,12,2]
>>> l
[1, 2, 3, 4, 5, 6, 4, 3, 6, 7, 9, 12, 2] >>> list(set(l))
[1, 2, 3, 4, 5, 6, 7, 9, 12]

Python:集合的更多相关文章

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

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

  2. [转]python集合set

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

  3. python集合使用范例的代码

    在代码过程中中,将代码过程中比较好的代码段珍藏起来,如下的代码是关于python集合使用范例的代码,希望能对大伙有用. # sets are unordered collections of uniq ...

  4. python集合与字典的用法

    python集合与字典的用法 集合: 1.增加  add 2.删除   •del 删除集合 •discard(常用)删除集合中的元素  #删除一个不存在的元素不会报错 •remove 删除一个不存在的 ...

  5. Python 集合内置函数大全(非常全!)

    Python集合内置函数操作大全 集合(s).方法名 等价符号 方法说明 s.issubset(t) s <= t 子集测试(允许不严格意义上的子集):s 中所有的元素都是 t 的成员   s ...

  6. Python 集合set()添加删除、交集、并集、集合操作详解

    集合:一个集合中,任何两个元素都认为是不相同的,即每个元素只能出现一次.每个元素的地位都是相同的,元素之间是无序的. 创建集合set python set类是在python的sets模块中,大家现在使 ...

  7. python集合可以进行相减

    python集合可以进行相减 student = {'tom','jim','mary','tom','jack','rose'} print(student) print('rose' in stu ...

  8. Python集合类型的操作与应用

    Python集合类型的操作与应用 一.Python集合类型 Python中的集合类型是一个包含0个或多个数据项的无序的.不重复的数据组合,其中,元素类型只能是固定数据类型,如整数.浮点数.字符串.元组 ...

  9. Python - 集合 - 第十一天

    Python 集合 集合(set)是一个无序的不重复元素序列. 可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建 ...

  10. python集合set,交集,并集,差集,对称差集,子集和超集

    python集合set,交集,并集,差集,对称差集,子集和超集 x = {1, 2, 3, 4} y = {2, 4, 5, 6} # 交集(取x中与y中相同部分) print(x.intersect ...

随机推荐

  1. HackerRank "Minimum Penalty Path"

    It is about how to choose btw. BFS and DFS. My init thought was to DFS - TLE\MLE. And its editorial ...

  2. Apache Shiro 使用手册(四)Realm 实现

    在认证.授权内部实现机制中都有提到,最终处理都将交给Real进行处理.因为在Shiro中,最终是通过Realm来获取应用程序中的用户.角色及权限信息的.通常情况下,在Realm中会直接从我们的数据源中 ...

  3. C语言面试题

    #include <stdio.h> int main() { ] = {, , , , }; ); // <==> (unsigned int)&a+sizeof(* ...

  4. java readLine()

    原文 虽然写IO方面的程序不多,但BufferedReader/BufferedInputStream倒是用过好几次的,原因是: 它有一个很特别的方法:readLine(),使用起来特别方便,每次读回 ...

  5. Redis 数据结构使用场景

    转自http://get.ftqq.com/523.get 一.redis 数据结构使用场景 原来看过 redisbook 这本书,对 redis 的基本功能都已经熟悉了,从上周开始看 redis 的 ...

  6. Codeforces724D [字符串][乱搞][贪心]

    /* 不要低头,不要放弃,不要气馁,不要慌张 题意:给你一个区间长度n和一个字符串,要求在字符串中选择一些symbol使得字符串的任意长度为n的子区间都存在至少一个symbol. 任意选取symbol ...

  7. 让finder显示路径

    在控制台输入 defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES 重启finder即可.

  8. JAVA设计模式之门面模式

    在阎宏博士的<JAVA与模式>一书中开头是这样描述门面(Facade)模式的: 门面模式是对象的结构模式,外部与一个子系统的通信必须通过一个统一的门面对象进行.门面模式提供一个高层次的接口 ...

  9. The listener supports no services解决一例

    The listener supports no services解决一例   Listener动态监听静态监听注册实例 今天做Advacned Replication实验的时候碰到一个问题,启动目标 ...

  10. Opera放弃自家内核转投WebKit的背后(转)

    Opera在2月13日宣布用户突破3亿,并且带着这3亿用户投入WebKit阵营,自家的Presto内核将会走入历史.Opera为什么选择在现在这个时间点放弃自有内核?之前Opera的坚持自主研发一直被 ...