组合数据类型包括集合类型、序列类型、字典类型,其中序列类型又可细分为元组类型和列表类型
1.集合类型及操作
集合是多个元素的无序组合
-集合类型与数学中的集合概念一致
-集合元素之间无序,每个元素唯一,不存在相同元素
-集合元素不可更改,不能是可变的数据类型
-集合用大括号{}表示,元素间用逗号分隔
-建立集合类型用{}或set()
-建立空集合类型,必须使用set()
集合的六个操作符
4个增强操作符
S|=T:更新集合S,包括在集合S和T中的所有元素
S-=T:更新集合S,包括在集合S但不在集合T中的元素
S&=T:更新集合S,包括同时在集合S和T中的元素
S^=T:更新集合S,包括集合S和T中的非相同元素
集合的操作函数或方法:
集合类型的应用场景:
集合类型最常用的是数据去重,因为集合类型所有的元素无重复
eg.>>>ls=[”p",“p”,“y”,'y",“123”] //定义了一个列表
>>>s=set(ls) //将其变成一个集合类型实现去重
{“p”,“y”,“123”}
2.序列类型及操作
序列是具有先后关系的一组元素
-序列是一组一维元素向量,元素类型可以不同
-类似数学元素序列
-元素间由序号引导,通过下标访问序列的特定元素
6个操作符
5个函数和方法:
元组
元组是序列类型的一种扩展
-元组是一种序列类型,一旦创建就不能被修改
-使用小括号()或tuple()创建,元素间用逗号分隔
-可以使用或不使用小括号
-元组继承了序列的所有操作方法
eg.
creature=“cat”,“dog”,“tiger”,“human”
creature[::-1]
(‘human’,‘tiger’,‘dog’,‘cat’).color ={0x001100,“blue”,creature}
color[-1][2]
‘tiger’
由于集合color的最后一个元素是一个元组,所以最后一行代码是指color最后一个元素的中的序号为2的元素
列表
列表是序列类型的一种扩展,十分常用
-列表是一种序列类型,创建后可以随意被修改
-使用方括号[ ]或list()创建,元素间用逗号分隔
-列表中各元素类型可以不同,无长度限制
常用的函数及方法:
eg.
ls=[“cat”,“dog”,“tiger”,1024]
ls[1:2]=[1,2,3,4]
[‘cat’,1,2,3,4,‘tiger’,1024]del ls[::3]
[1,2,4,‘tiger’]ls*2
[1,2,4,‘tiger’,1,2,4,‘tiger’]
3.字典类型及操作
字典类型是“映射”的体现
字典类型中的每一个元素是一对键值对
-键值对:键是数据索引的扩展
-字典是键值对的集合,键值对之间无序
-采用大括号{}和dict()创建,键值对中的键和值用:分隔,两个键值对之间用‘,’分隔。
eg.{<键1>:<值1>,<键2>:<值2>,…,<键n>:<值n>}
(1)字典类型的用法:
在字典变量中,通过键获得值
<字典变量>={<键1>:<值1>,<键2>:<值2>,…,<键n>:<值n>}
<值>=<字典变量>[<键>]
<字典变量>[<键>]=<值>
[ ]用来向字典变量中索引或增加变量
d={"中国“:”北京“,"美国”:“华盛顿”,“法国”:“巴黎”}
d
{‘中国’:‘北京’,‘美国’:‘华盛顿’,‘法国’:‘巴黎’}d[“中国”]
‘北京’de={}
type(de)
<class ‘dict’>
type(x) 返回变量x的类型
(2)字典的操作函数和方法
六个字典操作的小例子:
1.定义空字典d: d={ }
2.向d新增2个键值对元素:d[“a”]=1; d[“b”]=2
3.修改第二个元素: d=[“b”]=3
4.判断字符"c"是否是d的键:“c” in d
5.计算d 的长度:len(d)
6.清空d: d.clear()