集合具有无序性,互异性

一.集合的建立

空集合

s=set()
s={}#这样默认为是一个空字典

集合内的元素是可哈希的即不可变的数据类型

s={1,2,3,4}
s=set([1,2,3,4])
s=set('python')
print(s)#{'h', 'y', 't', 'n', 'p', 'o'}

二.添加元素

s=set([1,2,3,4])
s.add(5)
print(s)#{1,2,3,4,5}

update可以添加多个元素

s.update([5,6])
print(s)#{1, 2, 3, 4, 5, 6}
s.update([7,8],{9,10})
print(s)#{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

三.删除元素

discard和remove都可以表示删除一个元素,但若集合中没有该元素,则使用remove会报错,discard不会

s={1,2,3,4}
s.remove(1)
print(s)#{2, 3, 4}
s.discard(2)
print(s)#{3, 4}
s.discard(5)
s.remove(5)#这句会报错

pop

s={1,2,3,4}
a=s.pop()#随机删除一个元素并将其作为返回值
print(a)

clear

s.clear()#清空集合
print(s)#set()空集合

四.不可变集合frozenset

s=frozenset(1,2,3,4)#不能进行增加或删除等操作

五.集合之间的关系

s1=set([1,2,3,4,5])
s2=set([4,5,6,7,8])

交集

s3=s1&s2
print(s3)#{4,5}
s3=s1.intersection(s2)
print(s3)#{4,5}

并集

s3=s1|s2
print(s3)#{1, 2, 3, 4, 5, 6, 7, 8}
s3=s1.union(s2)
print(s3)#{1, 2, 3, 4, 5, 6, 7, 8}

差集

#属于s1但不属于s2
s3=s1-s2
print(s3)#{1, 2, 3}
s3=s1.difference(s2)
print(s3)#{1, 2, 3}

对称差

#除去s1和s2中相同的元素
s3=s1^s2
print(s3)#{1, 2, 3, 6, 7, 8}
s3=s1.symmetric_difference(s2)
print(s3)#{1, 2, 3, 6, 7, 8}

子集

s1={1,2,3,4}
s2={3,4,5,6}
s3={2,3,4}
print(s2<s1)#False
print(s3<s1)#True
print(s3.issubset(s1))#True

超集

s1={1,2,3,4}
s2={3,4,5,6}
s3={2,3,4}
print(s1>s2)#False
print(s1>s3)#True
print(s1.issuperset(s3))#True

  

python基础学习10----集合的更多相关文章

  1. python基础学习10

    python基础学习 内容概要 文件内光标的移动 文件数据修改 函数简介 函数语法结构 内容详情 文件内光标的移动 with open(r'路径','r',encoding='utf8') as f: ...

  2. python基础学习1-SET 集合

    # -*- coding:utf-8 -*- set集合 无序不重复的序列 se = {"a","b","c"} #创建SET集合 prin ...

  3. Python基础学习之集合

    集合是一个无序.不重复的数据集合,它的主要作用如下: 去重:把一个列表变成集合,就可以去除重复的内容 关系测试:测试两组数据之间的交集.并集.差集等关系 集合常用的操作: #创建一个数值集合 s=se ...

  4. python基础学习之集合set

    .集合:set 特点:无序,不可重复(自动去重),可更改,可以与元组.列表互相转换 格式:s = {'x','y','z'} 转换:(转回用set) s = {'x','y','z'}        ...

  5. Python基础学习五

    Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出 ...

  6. python基础学习7

    python基础学习7 内容概要 字符串的内置方法 字符串的内置方法(补充) 列表的内置方法 可变类型与不可变类型 队列与堆栈 内容详情 字符串的内置方法 # 1.strip 移除字符串首尾的指定字符 ...

  7. Day1 Python基础学习

    一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...

  8. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  9. Day1 Python基础学习——概述、基本数据类型、流程控制

    一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...

  10. Python 基础学习 总结篇

    Python 基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结 ...

随机推荐

  1. Linux下自动清理超过指定大小文件的方法

    由于线上业务用的squid,根据经验值如果长时间运行则缓存目录下的swap.state会慢慢变大,一旦超过60M,squid的性能就会急剧下降,因此需要定时去清理大于60M的swap.state文件. ...

  2. 【IT笔试面试题整理】字符串转数组+数组转字符串

    [试题描述]定义一个函数,字符串转数组数组转字符串 [参考代码] public static int strToInt(String str) { int i = 0, num = 0; char[] ...

  3. Tomcat专题

    1. 修改端口 tomcat-7.0.70/conf/server.xml <Connector port=" protocol="HTTP/1.1"

  4. switch-case最容易忽视的一点

    switch语句是常用的一种java语法,但是往往最基本的,总是最容易被人们忽略. 首先,看下switch语句的基本结构: switch(表达式){ case 常量1: 语句1; break; cas ...

  5. react高阶组件的理解

    [高阶组件和函数式编程] function hello() { console.log('hello jason'); } function WrapperHello(fn) { return fun ...

  6. More Effective C++ 35 条款

    一.基础议题(basics) 条款1:仔细区别 pointers 和 references(Distinguish between pointers and references) 一个基本的语法问题 ...

  7. Linux下安装SQL Server 2016(准备篇SQL Server on linux)

    要在Linux安装sql server,首先的先有linux,下面会讲下载,然后安装Linux. 一.下载centos 7.2 : Centos 7.2下载 大概4G左右,这个链接的下载速度还是非常快 ...

  8. javascript学习之路之元素获取和设置属性

    收拾心情,学习学习js!总结下自己的学习所得! 现有的有三种方法可以获取元素的节点,分别是通过元素ID,通过标签名和类名来获取的 1.GetElmentById:将返回一个与那个有给定ID属性的值的元 ...

  9. ajax 拼接html标签 thinkphp

    ajax 拼接html标签  thinkphp框架 一.html部分 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional ...

  10. [日常] Go语言圣经-指针对象的方法-bit数组习题2

    练习 6.3: (*IntSet).UnionWith会用|操作符计算两个集合的交集,我们再为IntSet实现另外的几个函数IntersectWith(交集:元素在A集合B集合均出现),Differe ...