Python从入门到项目实战笔记(4)组合数据类型

Python从入门到项目实战笔记(4)组合数据类型

基于计算机二级

计算机不仅能对单个变量表示的数据进行处理,通常情况,计算机更需要对一组数据进行批量处理。这种能够表示多个数据的类型称为组合数据类型。Python语言中最常用的组合数据类型有3大类。这种能够表示多个数据的类型称为组合数据类型。Python语言中最常用的组合数据类型有3大类,分别是集合类型、序列类型和映射类型。

  • 集合类型是一个元素集合,元素间无序,每个元素在集合中唯一存在。
  • 序列类型是一个元素向量,元素之间存在先后关系,通过序号访问,元素之间不排他。序列类型的典型代表是字符串类型和列表类型。
  • 映射类型是"键-值"数据项的组合,每个元素是一个键值对,表示为(key,value)。映射类型的典型代表是字典类型。

集合类型是一个具体数据类型名称,而序列类型和映射类型是一类数据类型的总称。

集合类型概述

Python语言中集合类型与数学中的集合概念一致,即包含0个或多个数据项的无序组合。集合是无序组合,用大括号{}表示,它没有索引和位置的概念,集合种的元素可以动态增加或删除。集合中的元素不可重复,元素类型只能是不可变数据类型,例如整数、字符串、元组等,相比较而言,列表、字典、和集合类型本身都是可变数据类型,不能作为集的元素出现。

  • 需要注意的是,由于集合元素是无序的,集合的输出顺序与定义顺序可以不一致。
  • 由于集合元素独一无二,使用集合类型能够过滤重复元素。
  • 集合中的元素是不可重复的,但是集合元素在输入时是不受限制的,元素在输入集合后会自动去重。

集合类型的操作符

操作符及运算 描述
S-T 返回一个新集合,包括在集合S中但不在集合T中的元素
S&T 返回一个新集合,包括同时在集合S和T中的元素
S-T 返回一个新集合,包括集合S和T中非共同元素
S|T 返回一个新集合,包括集合S和T中所有元素

集合类型常用的操作函数或方法

函数或方法 描述
S.add(x) 如果数据项x不在集合S中,将x增加到S
S.remove(x) 如果x在集合S中,移除该元素;不在则产生KeyError异常
S.clear() 移除S中所有数据项
len(S) 返回集合S的元素个数
x in S 如果x是S的元素,返回True;否则返回False
x not in S 如果x不是S的元素,返回True;否则返回False

序列类型概述

序列类型是一维元素向量,元素之间存在先后关系,通过序号访问。当需要访问序列中某个特定值时,只需要通过下标标出即可。由于元素之间存在顺序关系,所以序列中可以存在数值相同但位置不同的元素。Python语言中有很多数据类型都是序列类型。其中比较重要的是字符串类型、列表类型、和元素类型。

序列类型和操作符和函数

操作符 描述
x in s 如果x是s的元素,返回True;否则返回False
x not in s 如果x不是s的元素,返回True;否则返回False
s + t 连接s和t
s * n或n* s 将序列s复制n次
s[i] 索引,返回序列的第i个元素
s[i:j] 切片,返回包含序列s第i到j个元素的子序列(不包含第j个元素)
s[i:j:k] 步骤切换,返回包含序列s第i到j个元素以k为步数的子序列
len(s) 序列s的元素个数(长度)
min(s) 序列s中的最小元素
max(s) 序列s中的最大元素
s.index(x) 序列s中第一次出现元素x的位置
s.count(x) 序列s中出现的总次数

元组类型

元组类型严格遵顼序列类型的操作定义,可以使用序列类型的操作符和函数。
元组类型一旦定义就不能修改,在编程中不够灵活,同时,元组类型的所有操作都可以由列表类型实现。因此,一般编程中,如果需要自定义变量,通常以列表类型替代元组类型适应。

列表类型

列表的操作函数

操作函数 描述
len(ls) 列表ls的元素个数(长度)
min(ls) 列表ls中的最小元素
max(ls) 列表ls中的最大元素
list(x) 将x转变成列表类型

列表的操作方法

方法 描述
ls.append(x) 在列表ls最后增加一个元素x
ls.insert(i,x) 在列表ls第i位置增加元素x
ls.clear() 删除ls中所有元素
ls.pop(i) 将列表ls中第i项元素取出并从ls中删除该元素
ls.remove(x) 将列表中出现的第一个元素x删除
ls.reverse() 将列表ls中的元素反转
ls.copy() 生成一个新列表,复制ls中的所有元素

字典类型

字典的定义
“键值对”是组织数据的一种重要方式,广泛应用在当代大型信息系统中,键值对的基本思想是将“值”信息关联一个“键”信息,进而通过键信息查找对应的值信息,这个过程叫映射。Python语言中通过字典类型实现映射。
Python语言中的字典使用大括号{}建立,每个元素是一个键值对,使用方式如下:
{<键1>:<值2>…}
其中键和值通过冒号连接,不同键值对通过逗号隔开。从Python设计角度考虑,由于大括号{}可以表示集合,所以,字典类型也具有和集合类型的性质,即键值对之间没有顺序且不能重复。可以简单地字典看成元素是键值对的集合。注意,尽管都使用大括号,但集合于字典是不同类型。
字典的索引
索引是按照一定顺序检索内容的体系。列表类型采用元素顺序的位置进行索引。由于字典元素"键值对"中键是值的索引,因此,可以;直接利用键值对关系索引元素。
<值> = <字典变量>[<键>]

字典的操作函数

操作函数 描述
len(d) 字典d的元素个数(长度)
min(d) 字典d中键的最小值
max(d) 字典d中键的最大值
dict() 生成一个空字典

字典的操作方法

操作方法 描述
d.keys() 返回所有的键信息
d.values() 返回所有的值信息
d.items 返回所有的键值对
d.get(key,default) 键存在则返回相应值,否则返回默认值default
d.pop(key,default) 键存在则返回相应值,同时删除键值对,否则返回默认值default
d.popitem() 随机从字典中取出一个键值对,以元组(key,value)形式返回,同时将该键值对从字典中删除
d.claer() 删除所有的键值对,清空字典

你可能感兴趣的:(python,python)