一、set集合
1、集合是一个无序不重复元素集,有去重的作用
set集合类需要的参数必须是迭代器类型的,如:序列、字典等,然后转换成无序不重复的元素集。由于集合是不重复的,所以可以对字符串、列表、元组进行去重操作。
(1)创建
s1=set('This is string') ([])
set1=set('python') 结果:set(['h', 'o', 'n', 'p', 't', 'y'])
s2=set([1,2,3])
s3=set((1,2,3,4,3,2)) set([1,2,3,4])
s4=set({1:2,2:3,6:6}) 字典只会把key值列表(相当于dict.keys()返回值)赋值给set set([1,2,6])
注意数值类型不能作为集合的参数,如int类型。
(2)添加元素
add() 把元素作为整体添加
update() 把元素中的子元素一个个添加
s2.add('abc') set([1,2,3,'abc'])
s2.update('abc') set(['a',1,2,3,'b','c'])
(3)删除元素
a、remove()
s2.remove('c') set (['a',1,2,3,'b'])
如果'c'不存在,会抛出异常
b、discard(value)
s2.discard(3)
c、pop()
s2.pop() 确保集合有元素,删除的元素不确定是哪个。如果为空引发KeyError错误
(4)遍历集合
for i in s2:
print i
(5)
枚举enumerate()
for index,elem in enumerate(2):
print index,':',elem
类型转化:
str(s2)
list(s2)
tuple(s2)
(6)清空集合
s1.clear()
(7)复制集合
s6=s2.copy()
(8)结合的长度
len(s2)
 
2、集合的特殊操作
(1)交集、并集、差集
s1=set([1,2,3])
s2=set([2,3,4,5])
s3=s1 & s2 交集 set([2,3])
s4=s1 | s2 并集 set([1,2,3,4,5])
s5=s1-s2 差集 在s1中但不在s2中 set([1])
s6=s1.difference(s2) s6的结果 set([1]) 同s5
 
(2) > 、>= < <= !=
print s1>=s2
 
(3)
issupperset()父集
s11=set([1,2])
print s1.issupperset(s11) Ture s1是否为s11的父集
print s1.issupperset(s2) False
issubset() 子集
s1.issubset(s2) s1是否为s2的子集
 
(4)in 和not in 成员运算符
if s1 in s2:
3、不可变集合 frozenset()
fs=frozenset([1,2,3])
如果试图改变不可变集合中的元素,就会报AttributeError错误。

Python之数据结构:集合的更多相关文章

  1. (python)数据结构---集合

    一.描述 set翻译为集合 set是可变的.无序的.不可重复的 set的元素要求可哈西(不可变的数据类型可哈西,可变的数据类型不可哈希) set是无序的,因此不可以索引,也不可以修改 线型结构的查询时 ...

  2. python基本数据结构-集合-集合运算

  3. python基本数据结构-集合-方法

  4. Python基本数据结构-集合-创建/与其他类型比较

  5. (python数据分析)第03章 Python的数据结构、函数和文件

    本章讨论Python的内置功能,这些功能本书会用到很多.虽然扩展库,比如pandas和Numpy,使处理大数据集很方便,但它们是和Python的内置数据处理工具一同使用的. 我们会从Python最基础 ...

  6. Python的set集合详解

    Python 还包含了一个数据类型 -- set (集合).集合是一个无序不重复元素的集.基本功能包括关系测试和消除重复元素.集合对象还支持 union(联合),intersection(交),dif ...

  7. python的数据结构分类,以及数字的处理函数,类型判断

    python的数据结构分类: 数值型 int:python3中都是长整形,没有大小限制,受限内存区域的大小 float:只有双精度型 complex:实数和虚数部分都是浮点型,1+1.2J bool: ...

  8. Python 基本数据结构

    Python基本数据结构 数据结构:通俗点儿说,就是存储数据的容器.这里主要介绍Python的4种基本数据结构:列表.元组.字典.集合: 格式如下: 列表:list = [val1, val2, va ...

  9. 转 Python常见数据结构整理

    http://www.cnblogs.com/jeffwongishandsome/archive/2012/08/05/2623660.html Python常见数据结构整理 Python中常见的数 ...

  10. python 与数据结构

    在上面的文章中,我写了python中的一些特性,主要是简单为主,主要是因为一些其他复杂的东西可以通过简单的知识演变而来,比如装饰器还可以带参数,可以使用装饰类,在类中不同的方法中调用,不想写的太复杂, ...

随机推荐

  1. 20180909 解析JS Cookie的设置,获取和检索

    引用: JavaScript Cookie - by runoob.com Cookie是储存在电脑文本文件中的数据,用于保存访问者的信息,并可以在下次打开页面时引用. 页面在设置/引用访问者信息时, ...

  2. POJ 2774 后缀数组 || 二分+哈希

    Long Long Message Time Limit: 4000MS   Memory Limit: 131072K Total Submissions: 35607   Accepted: 14 ...

  3. MySQL解决中文编码问题

    转载组员博客 地址:MySQL解决中文编码问题

  4. 二十一、MySQL NULL 值处理

    MySQL NULL 值处理 我们已经知道 MySQL 使用 SQL SELECT 命令及 WHERE 子句来读取数据表中的数据,但是当提供的查询条件字段为 NULL 时,该命令可能就无法正常工作. ...

  5. Vue插槽

    插槽内容 Vue实现一套内容分发的API, 这套API基于当前的web组件规范草案,将元素作为承载分发内容的出口. <navigation-link url="/profile&quo ...

  6. 关于PHPExcel导出Excel时身份证,数字会导出为科学计数的处理方法

    上次在开发一个项目时,用到PHPExcel导出数据,其中有导出身份证等长串数字时导出的Excel中显示为科学计数方式. 这种显示很不人性化而且量多了修改起来也很麻烦. 这是因为Excel处理数字里默认 ...

  7. JAVA解析XML有哪几种方法?并简述各自的优缺点

    DOM: 是用与平台和语言无关的方式表示XML文档的官方W3C标准,分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作.是基于信息层次的 优点有:由于树在内存中是持久的,因此可以修改它以 ...

  8. Django2.2使用mysql数据库pymysql版本不匹配问题的解决过程与总结

    前置条件 django版本:2.2.1 python版本:3.6.6 mysql版本:mysql-community8.0.15 问题 在搭建django项目,配置mysql数据库时遇到无法迁移数据库 ...

  9. sql中保留一位小数的百分比字符串拼接,替换函数,换行符使用

    select  num ,cast(round(convert(float,isnull((a.Sum_Num-d.Sum_Num),0))/convert(float,c.Sum_Store_Num ...

  10. Django中前端界面实现级联查询

    Django前端界面实现级联查询 一.前端界面中 <span scope="col" colspan="6"> 院系:<select id=& ...