组合数据类型
⼀、组合数据类型
组合数据类型有3⼤类,分别是集合类型、序列类型、映射类型。
1、集合
⽆序组合,⼀般⽤⼤写字母表⽰
(1)集合中的元素不可重复
(2)集合是⽆序组合,没有索引和位置的概念
(3)set()函数⽤于集合的⽣成,返回结果是⼀个⽆重复且排序任意的集合
(4)集合通常⽤于表⽰成员间的关系、元素去重等。
(5)集合不可以⽤{}直接⽣成,{}直接⽣成的是字典
集合操作符
4种基本操作:交并差补
S-T 或 S.difference(t) 返回在集合s中但不在t中的元素
S&T 或 S.intersection(t) 返回同时在集合s和t中的元素
S|T 或 S.union(t) 返回结合s和t中的所有元素
S^T 或 S.symmetric_difference(t) 返回集合s和t中的元素,但不包括同时在其中的元素。
操作⽅法和函数:
S.add(x) 如果数据项x不在集合S中,将x增加到S
S.discard(x) 移除S中的元素x,如果x不在集合S中,不报错
S.clear() 移除S中所有的数据项
S.pop() 随机返回S的⼀个元素,更新S,若S为空,产⽣KeyError异常
len(S) 返回集合S元素个数
x in S 返回值是布尔值,判断x是否是S的元素
x not in S 返回值是布尔值,判断x是否是S的元素
2、序列类型
有序组合,字符串、列表、元组都属于序列类型。
(1)列表 [] list()
序列类型是⼀维元素向量,元素之间存在先后关系,通过序号访问。
访问时通过下标标出即可,正向递增序号、反向递减序号。
操作符
x in s 返回值是布尔值,判断x是否是s的元素
x not in s 返回值是布尔值,判断x是否是s的元素
s + t 连接s和t
s n 或 n s 将序列s复制n次
s[i] 索引第i个元素
s[i : j] 切⽚,包含第i个元素,不包含第j个元素
s[i : j : k] 步骤切⽚,步长为k
s[: : -1] 序列取反
–操作函数
len(s) 序列s的元素个数
min(s) 序列s的最⼩元素
max(s) 序列s的最⼤元素
sorted(s,func) 对列表元素排序,⾼阶函数
–⽅法
s.index(x) 返回第⼀次出现元素x的索引值
s.index(x, i, j) 从i到j(不包含j)第⼀次出现元素x的索引值
s.append(x) 将x添加到列表末尾
s.sort() 对列表元素排序
s.insert(i,x) 在位置i处插⼊新元素x
s.pop(i) 取出列表中i位置上的元素,并在列表中将其删除
s.pop() 取出列表中第⼀个元素,并在列表中将其删除
s.clear() 删除列表中的所有元素
(2)字符串 str()
基本适⽤列表的操作。
字符串处理函数
len(x) 返回字符串的长度
str(x) 返回任意类型x所对应的字符串形式
chr(x) 返回Unicode编码x对应的单字符
ord(x) 返回单字符x表⽰的Unicode编码
hex(x) 返回整数x对应⼗六进制数的⼩写形式字符串
oct(x) 返回整数x对应⼋进制数的⼩写形式字符串
字符串处理⽅法
str.lower() 返回字符串副本,全部字符⼩写
str.upper() 返回字符串副本,全部字符⼤写
str.split(step = None) 返回⼀个列表,由str根据sep被分隔的部分构成,省略sep默认以空格分隔unt(sub) 返回sub⼦串出现的次数
<(width, fillchar) 字符串居中函数,fillchar参数可选
str.strip(chars) 从字符串str中去掉在其左侧和右侧chars中所列出的字符
str.join(iter) 将iter变量的每⼀个元素后增加⼀个str字符串
(3)元组 () tuple()
不可以修改、删除、增加
3、映射
键-值,键可以是元组,不可以是列表
字典 {} dic()
字典类型(dict)是‘’键–值‘’数据项的组合,每个元素是⼀个键值对。
基本操作:
定义空字典: d = dict() d = {}
增加⼀项: d[key] = value 如d[“a”]=“abc”
unicode文件格式
访问: d[key]
删除某项: del d[key]
key是否在字典中: key in d
字典的遍历:
遍历所有的key: for key in d.keys():
print(key)
遍历所有的value: for value in d.values():
print(value)
遍历所有的数据项:for item in d.items():
print(items)
操作函数
len(d) 字典d的元素个数
min(d) 字典d中键的最⼩值
max(d) 字典d中键的最⼤值
dic() {} ⽣成空字典
操作⽅法
d.keys() 返回所有的键信息
d.value() 返回所有的值信息
d.items() 返回所有的键值对
<(key, default) 键存在则返回相应值,否则返回默认值default
d.pop(key, default) 键存在则返回相应值,同时删除键值对,否则返回默认值default
d.popitem() 随机从字典中取出⼀个键值对,以元组(key, value)形式返回,同时将该键值对从字典中删除d.clear() 删除所有的键值对,清空字典
d.update(d2) 把字典d2的键/值对更新到d⾥,同时d2消失

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。