前面小节:

sep 用来控制每个元素间的间隔符号

print("alex", "dabai", "liu", sep = "")

按可变不可变:

1.可变:列表,字典

2.不可变:字符串, 数字, 元组

修改了变量的值,而id号跟着改变,即不可变类型

name = 'alex'
print(id(name))
name = 'sb'
print(id(name))

按访问顺序:

1.顺序访问:字符串, 列表, 元组

2.映射:字典

3.直接访问:数字

存放元素个数:

容器类型:列表,元组, 字典

原子:数字,字符串

#################集合 ###################

一、集合  set

1.不同的元素组成

2.无序

3.集合中元素必须是不可变类型

s = {1, 2, 3, 4, 5}

内置函数:set()   也有简单的去重作用,不在意顺序的话

s = set('hello')
print(s)
s1 = set(["alex", "alex", "sb"])
print(s1)

二、集合的魔法

1. add,  向集合添加元素(只能更新一个)

s = {1, 2, 3, 4, 5, 6}
s.add('alex')
print(s)

2. clear 清空集合

s.clear()

3. 拷贝集合

s1 = s.copy()

4. pop随机删除元素

s = {1, 2, 3, 4, 5, 6}
v = s.pop()
print(s,v)

5. remove 指定元素删除,删除元素不存在时会报错

s = {1, 2, 3, 4, 5, 6}
s.remove(3)
print(s)

6. discard 指定元素删除,但是要删的元素不存在也不会报错

s = {1, 2, 3, 4, 5, 6}
s.discard(5)
print(s)

7. 交集

s1 = {1, 2, 3}
s2 = {2, 3, 4, 6}
n = s1.intersection(s2)
print(n)

或者:&

s1 = {1, 2, 3}
s2 = {2, 3, 4, 6}
n = s1 & s2
print(n)

8. 并集

s1 = {1, 2, 3}
s2 = {2, 3, 4, 6}
n = s1.union(s2)
print(n)

或者:|

s1 = {1, 2, 3}
s2 = {2, 3, 4, 6}
n = s1 | s2
print(n)

9.求差集(s1 中有而s2中没有)

s1 = {1, 2, 3}
s2 = {2, 3, 4, 6}
n = s1.difference(s2)
print(n)

或者:-

s1 = {1, 2, 3}
s2 = {2, 3, 4, 6}
n = s1 - s2
print(n)

10.交叉补集(s1 和 s2 的全部,减去两者的交集)

s1 = {1, 2, 3}
s2 = {2, 3, 4, 6}
n = s1.symmetric_difference(s2)
print(n)

或者   ^

s1 = {1, 2, 3}
s2 = {2, 3, 4, 6}
n = s1 ^ s2
print(n)

11.更新差集

s1 = {1, 2, 3}
s2 = {2, 3, 4, 6}
s1.difference_update(s2)
s1 = s1 - s2
print(s1)
print(s1)

12. s1 是否是s2的子集

s1 = {1, 2, 3}
s2 = {1, 2, 3, 4, 6}
n = s1.issubset(s2)
print(n)

13. s2是否是s1的父集

s1 = {1, 2, 3}
s2 = {1, 2, 3, 4, 6}
n = s2.issuperset(s1)
print(n)

14. 更新多个值,参数可以是列表、元组等

s1 = {1, 2, 3}
s2 = {1, 2, 3, 4, 6}
s1.update(s2)
print(s1)

15. 定义一个不可变的集合(不能增删改)

s = frozenset("hello dabai")
print(s)

python课堂整理7---集合的更多相关文章

  1. python课堂整理19----迭代器和生成器

    一.概念 • 迭代器协议: 对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么引起一个stopIteration异常,以终止迭代(只能往后走,不能往前退) • 协议是一种约定,pyt ...

  2. python课堂整理18---文件操作(下)

    一.b模式,字节方式(二进制的单位),rb wb ab f = open('test.py', 'rb', encoding = 'utf-8') 报错,因为用了b模式,就不能再指定编码格式了,已经指 ...

  3. python课堂整理16---内置函数

    1. abs :求绝对值 print(abs(-1)) 2. all()传入一个可迭代对象,对该对象进行bool值运算,若都为True 就返回True,有一个为假,就返回False print(all ...

  4. python课堂整理10---局部变量与全局变量

    一.局部变量与全局变量 1. 没有缩进,顶头写的变量为全局变量 2. 在子程序里定义的变量为局部变量 3. 只有函数能把变量私有化 name = 'lhf' #全局变量 def change_name ...

  5. python课堂整理4---列表的魔法

    一.list   类, 列表 li = [1, 12, 9, "age", ["大白", "小黑"], "alex"] ...

  6. python课堂整理1

      1.变量 变量只能由字母.数字.下划线组成 特例:1.变量不能用数字开头    2.不能是python的关键字 3.最好不要和python内置的东西重复 让变量名有意义 些 python3的关键字 ...

  7. python课堂整理21---初识装饰器

    一.装饰器: 本质就是函数,功能:为其他函数添加附加功能 原则: 1.不能修改被装饰函数的源代码 2.不能修改被修饰函数的调用方式 一个简单的装饰器 import time def timmer(fu ...

  8. python课堂整理20----生产者消费者模型

    一.实现功能:店铺生产包子,消费者来吃 import time def producter(): ret = [] for i in range(10): time.sleep(0.1) ret.ap ...

  9. python课堂整理17---文件操作(上)

    1.在同一目录下新建文本文件 “爱了” 2.在该文件下写入内容,同时留意pycharm右下角的编码格式为 utf- 8 3.下面程序中的read函数会索引系统默认的编码格式,winx下是gbk ,所以 ...

随机推荐

  1. web.congfig 禁用 ViewState Session

    <!--禁用 ViewState Session--> <pages enableViewState="false" enableSessionState=&qu ...

  2. 基于Google Earth Engine的全国地表温度反演

    国内研究landsat8温度反演的人员很多,但是现有算法一般都是一景为例子,进行开展. 这有一个局限性,当研究的尺度很大时,就需要比较大的运算量了,例如全省温度,全国温度,全球温度,当然大家可能会说, ...

  3. 一步到位安装Centos7、配置VMware、连接Xshell

    1.创建虚拟机 1.0 创建新的虚拟机 1.0.1 选择自定义配置 打开VMware,点击创建新的虚拟机. 如下图所示:   1.0.2 选择虚拟机硬件兼容性 如下图所示:   1.0.3 安装客户操 ...

  4. 【MySQL插入更新重复值】ON DUPLICATE KEY UPDATE用法

    要插入的数据  与表中记录数据的 惟一索引或主键中产生重复值,那么就会发生旧行的更新 弊端:造成主键自增不连续.适合数据量不大的表. ON DUPLICATE KEY UPDATE后面的条件 eg有如 ...

  5. mysql批量update操作时出现锁表

    https://www.cnblogs.com/wodebudong/articles/7976474.html 最近遇到一件锁表的情况,发现更新的语句where检索的字段,没有建索引,且是批量操作的 ...

  6. 【HDU - 1495】非常可乐

    -->非常可乐  Descriptions: 大家一定觉的运动以后喝可乐是一件很惬意的事情,但是seeyou却不这么认为.因为每次当seeyou买了可乐以后,阿牛就要求和seeyou一起分享这一 ...

  7. 牛逼哄哄的Qt库

    目录 一.有价值 - 好的网站 - 好的文章 二.Qt开源库-工具 - QtXlsx--excel读写库 三.Qt开源库-控件 - libqxt编译 - Qwt - QCustomPlot - 其他 ...

  8. BFS(五):八数码难题 (POJ 1077)

    Eight Description The 15-puzzle has been around for over 100 years; even if you don't know it by tha ...

  9. BZOJ 1085:[SCOI2005]骑士精神(A*算法)

    题目链接 题意 中文题意. 思路 首先找到空白的格子,因为空白的格子可以和其他的骑士换.从空白的点开始搜索,每次和其他点交换.因为最多只有十五步,可以做16次搜索,搜索的时候,记录走过的步数和至少剩余 ...

  10. 详解FIX协议的原理、消息格式及配置开发

    一.定义 FIX协议是由国际FIX协会组织提供的一个开放式协议,目的是推动国际贸易电子化的进程,在各类参与者之间,包括投资经理.经纪人,买方.卖方建立起实时的电子化通讯协议.FIX协议的目标是把各类证 ...