第六周:组合数据类型(Python学习笔记)

组合数据类型

组合数据类型有三种最重要的类型结构:

  • 集合类型及操作
  • 序列类型及操作
  • 字典类型及操作

集合类型及操作

集合类型的定义

集合是多个元素的无序组合
集合类型与数学中的集合概念一致
集合元素之间无序,每个元素唯一,不存在相同元素
集合元素不可更改,不能是可变数据类型
集合的表示
集合用大括号{}表示,元素间用逗号分隔
建立集合类型用{}或set()
建立空集合类型,必须使用set()
重点
集合用大括号表示,元素间用逗号分隔
集合中每个元素唯一,不存在相同的元素
集合元素之间无序

集合操作符

在数学中集合有4种运算方法:并、差、交、补,Python提供了6中操作符来表达集合中的运算,如:S|T、S-T、S&T、S^T、S<=T、S>=T
这里写图片描述
这里写图片描述
这里写图片描述

集合处理方法

S.add(x)、S.discard(x)、S.remove(x)、S.clear()、S.pop()
这里写图片描述
S.copy()、len(S)、x in S、x not in S、set(x)
这里写图片描述
这里写图片描述

集合类型应用场景

包含关系比较

这里写图片描述

数据去重:集合类型所有元素无重复

这里写图片描述

小结

  1. 集合使用{}和set()函数创建
  2. 集合间操作:交(&)、并(|)、差(-)、补(^)、比较(>=<)
  3. 集合类型方法:.add()、.discard()、.pop()等
  4. 集合类型主要应用于:包含关系比较、数据去重复

序列类型及操作

序列类型的定义

序列是具有先后关系的一组元素
序列是一维元素向量,元素类型可以不同
类似数学元素序列:S0,S1,…,Sn-1
元素间由序号引导,通过下标访问序列的特定元素

序列是一个基类类型,可以衍生为字符串类型、元组类型、列表类型

序号的定义:
这里写图片描述

序列处理函数及方法

序列类型通用操作符:x in s ,x not in s ,s+t ,s*n或n*s ,s[i] ,s[i:j]或s[i:j:k]
这里写图片描述
这里写图片描述

序列类型通用函数和方法:len(s),min(s),max(s),s.index(x),s.count(x)
这里写图片描述
这里写图片描述

元组类型及操作

元组是序列类型的一种扩展
元组是一种序列类型,一旦创建就不能被修改
使用小括号()或tuple()创建,元素间用逗号,分隔
可以使用或不使用小括号
这里写图片描述
元组继承序列类型的全部通用操作
元组继承了序列类型的全部通用操作
元组因为创建后不能修改,因此没有特殊操作
使用或不使用小括号
这里写图片描述

列表类型及操作

列表是序列类型的一种扩展,十分常用
列表是一种序列类型,创建后可以随意被修改
使用方括号[]或list()创建,元素间用逗号,分隔
可以使用或不使用小括号
这里写图片描述
列表类型操作函数和方法:ls[i]=x ,ls[i:j:k]=lt , del ls[i] , del ls [i:j:k] , ls+=lt , ls *= n
这里写图片描述
这里写图片描述

方法:ls.append(x) , ls.clear() , ls.copy() , ls.insert(i,x) , ls.pop(i) , ls.remove(x) , ls.reverse()
这里写图片描述
这里写图片描述

序列类型应用场景

序列类型应用场景
元组用于元素不改变的应用场景,更多用于固定搭配场景
列表更加灵活,它是最常用的序列类型
最主要作用:表示一组有序数据,进而操作它们

元素遍历:
这里写图片描述

数据保护:如果不希望数据被程序所改变,转换成元组类型
这里写图片描述

小结

  1. 序列是基类类型,扩展类型包括:字符串、元组和列表
  2. 元组用() 和tuple()创建,列表用[]和list()创建
  3. 元组操作与序列操作基本相同
  4. 列表操作在序列操作基础上,增加了更多的灵活性

字典类型及操作

字典类型的定义

理解“映射”
映射是一种键(索引)和值(数据)的对应
字典类型是“映射”的体现
键值对:键是数据索引的扩展
字典是键值对的集合,键值对之间无序
采用大括号{}和dict()创建,键值对用冒号: 表示
这里写图片描述

在字典变量中,通过键获得值
这里写图片描述
这里写图片描述
注意:如果想生成一个空的字典类型,用{};想生成一个空的集合必须用set()

字典处理函数及方法

字典类型操作函数:del d[k] , k in d , d.keys() , d.values()
这里写图片描述
这里写图片描述
字典类型操作方法:d.get(k,) , d.pop(k,) , d.popitem() , d.clear() , len(d)
这里写图片描述
这里写图片描述

字典类型应用场景

映射的表达
映射无处不在,键值对无处不在
例如:统计数据出现的次数,数据是键,次数是值
最主要作用:表达键值对数据,进而操作它们
元素遍历
for k in d :
<语句块>

小结

  1. 映射关系采用键值对表达
  2. 字典类型使用{}和dict()创建,键值对之间用: 分隔
  3. d[key]方式既可以索引,也可以赋值
  4. 字典类型有一批操作方法和函数,最重要的是get()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章