Python组合数据类型

一、组合数据类型概述
        简单数据类型能够存储单个数据,当一系列数据需要存储时,需要定义多个简单数据类型变量
        数值类型仅能存放数值型数据,无法存放文本数据,组合数据类型可以将多个数据存储在一个变量。

组合数据类型
序列类型 类型 有序性 可变性 元素重复 定义符号 典型应用场景
列表 有序 可变 允许 [ ] 动态数据集合、临时存储
元组 有序 不可变 允许 ( ) 固定配置、函数多返回值
字符串 支持索引和切片操作 不可变 允许 单/双引号、三引号 文本处理、日志解析
集合类型 字典 无序 可变 键唯一 {key: value} 键值对映射
映射类型 集合 无序 可变 不允许 { } 或 set() 去重、集合运算

二、序列类型

(1)索引号有两类编号方式:

- 从左到右按正向递增的顺序,起始序号为0

- 从右向左按反向递减的顺序,起始序号为-1 

序号 0 1 2 3 4 5 6 7
元素
序号 -8 -7 -6 -5 -4 -3 -2 -1

(2)序列的切片
        序列类型通过切片可以访问一定范围内的元素,可以是连续的元素,也可以是按指定步长的不连续的元素,并生成一个新的序列。序列切片方式,有以下几种情况,如下表所示。

类别 方法 说明 举例 结果
两边切片 [:m] 从右侧开始到第n-1个索引号 zg[:2] 或者 zg[:-6] “中华”
[n:] 从左侧第n个索引号开始到序列最后 zg[4:」 或者 zg[-4:] “共和国。”
中间切片 [n:m] 从左侧第n个索引号开始到第m-1个索引号 zg[2:4] 或者 zg[-6:-4] “人民”
[n:m:k] 从左侧第n个索引号开始到第m-1个索引号,以k为步 zg[1:7:2]或者 zg[-7:-1:2] “华民和。”

        怕大家不知道代码怎么写,我在这里把代码写出来。

zg = "中华人民共和国。"
print(zg[:2])                
print(zg[:-6])            #输出 中华

print(zg[4:])
print(zg[-4:])            #输出 共和国。

print(zg[2:4])
print(zg[-6:-4])          #输出 人民

print(zg[1:7:2])
print(zg[-7:-1:2])        #输出 华民和

这是我运行的结果截图。

Python组合数据类型_第1张图片

(3)序列的加法运算

- 序列和序列之间的连接,生成一个新的序列,用“ + ”运算符实现。

                “abc” + “def’ =“abcdef”                                        注:只支持相同类型的序列之间运算。

(4)序列的乘法运算

- 序列的若干次重复,生成一个新的序列,用“ * ”运算符实现。

                “abc”*3=“abcabcabc”

(5)判断序列成员

- 判断一个元素是否是序列的成员,可以使用 in 和 not in 保留字来实现。

zg = "中华人民共和国。"
print("中华" in zg)                    #逻辑真(True)
print("中华" not in zg)                #逻辑假(false)

运行结果如下:

(6)内置函数

类别 函数 功能 举例 结果
统计函数 len(x) 返回序列x的长度即元素个数 len(“*ab;c”) 4
min(x) 返回序列x中最小的元素 min(“abc”") “a”
max(x) 返回序列x中最小的元素 min(“abc”) “C”
sum(x) 对元素都是数值类型的序列x求和 sum([1,2,3]) 6
修改函数 sorted(x[,reverse=False]) 对序列元素排序,返回一个有序列表 sorted(('b','c','a’)) ['a', 'b', 'c]
reversed(x) 返回一个以逆序访问的迭代器。 reversed(('a','b','c’)) 迭代器
生成函数 zip(xl[,x2,x3..,xn]) 返回一个zip 对象,可生成一个迭代器,迭代器的第n个元素是由所有参数序列第n个元素组成的n元组 zip('abc',(1,2.3)) 迭代器
enumerate(x) 返回一个enumerate 对象,可生成迭代器该迭代器元素是由序列x元素的索引和值组成的元组 enumerate('abe') 迭代器

三、集合类型

1、核心特征

唯一性

- 集合自动去重,相同的元素不会重复存储。

s = {1, 2, 2, 3}
print(s)  # 输出 {1, 2, 3}

无序性

- 元素没有固定顺序,不支持索引访问。

s = {1, 2, 3}
print(s[0])  # 报错:TypeError: 'set' object is not subscriptable

2、常见操作

操作 方法/符号 示例
并集 union() 或 | s1 | s2
交集 intersection() 或 & s1 & s2
差集 difference() 或 - s1 - s2
添加元素 add() s.add(4)
删除元素 remove() s.remove(2)
检查存在性 in if 3 in s:......

         集合的应用通常用于数据的去重、元素共现、数据包含等场景。

四、映射类型

        映射是指两个事物之间的对应关系,两个事物间的映射关系在我们生活中大量存在。除了一对一关系外,映射也有一对多和多对多关系。
        在Python中,映射类型是一种用于存储键值对(key-value pairs)的数据结构,允许通过键快速访问对应的值。

        字典是Python语言中唯一的映射类型。

你可能感兴趣的:(笔记,python,学习)