Python中容器类型的数据(上)

若我们想将多个数据打包并且统一管理,应该怎么办?
Python内置的数据类型如序列(列表、元组等)、集合和字典等可以容纳多项数据,我们称它们为容器类型的数据。

序列

序列 (sequence) 是一种可迭代的、元素有序的容器类型的数据。


序列包括列表 (list)、 字符串(str)、 元组 (tuple) 和字节序列(bytes) 等。

序列的索引操作

序列示例: Hello字符串。


序列中的元素都是有序的,每一个元素都带有序号,这个序号叫作索引。索引有正索引和负索引之分。在Python中,索引是一种用于访问序列(如列表、元组、字符串等)中元素的机制,以下是关于索引的详细介绍:

正索引:序列中的元素从左到右依次分配正索引,从0开始。例如,对于列表 my_list = 10, 20, 30, 40 , my_list0 表示第一个元素10, my_list2 则表示第三个元素30。

负索引:从右到左为元素分配负索引,从-1开始。在上述列表中, my_list-1 表示最后一个元素40, my_list-3 表示第二个元素20。

索引操作
访问元素:通过在序列名称后加上中括号并在其中指定索引值,可获取对应位置的元素。如对于字符串 my_str = "Hello" , my_str1 可获取字符'e'。
修改元素:对于可变序列,如列表,可通过索引来修改元素的值。如 my_list = 1, 2, 3 ,执行 my_list1 = 4 后,列表变为 1, 4, 3
切片操作:使用索引可以对序列进行切片,获取子序列。格式为 sequencestart:stop:step , start 是起始索引, stop 是结束索引(不包含该索引对应的元素), step 是步长。例如 my_list1:3 会返回索引1到2的元素 2, 3 , my_list::2 则会每隔一个元素取一个,返回 1, 3

在使用索引时,要确保索引值在序列的有效范围内,否则会引发 IndexError 异常。

列表

列表 (list)是一种可变序列类型,我们可以追加、插入、删除和替换列表中的元素。
Python中的列表是一种非常常用且灵活的数据结构,以下是关于它的介绍:

定义与创建
可以使用方括号 直接创建列表,例如 my_list = 1, 2, 3, 'apple', 3.14 ,其中可以包含不同类型的元素。也可以使用 list() 函数创建列表,如 my_list = list((1, 2, 3)) ,它接受可迭代对象作为参数并转换为列表。

特点
有序性:列表中的元素按照定义的顺序排列,每个元素都有固定的位置,可以通过索引来访问和操作。
可变性:列表是可变的数据类型,支持对元素进行修改、删除和插入等操作。

常用操作
访问元素:通过索引访问,索引从0开始。如 my_list2 可获取第三个元素。
修改元素:可以直接通过索引对元素进行赋值修改,如 my_list1 = 'banana' 。
添加元素:使用 append() 方法在列表末尾添加元素, my_list.append(4) ;使用 insert() 方法在指定位置插入元素, my_list.insert(2, 'cherry') 。
删除元素:使用 del 语句删除指定索引的元素, del my_list3 ;使用 remove() 方法根据元素值删除元素, my_list.remove('apple') 。
列表拼接:使用 + 运算符可以将两个列表拼接起来, list1 + list2 。
列表复制:使用 * 运算符可以复制列表, my_list * 3 表示将列表重复3次。

其他常用方法
count():统计列表中某个元素出现的次数,如 my_list.count('apple') 。
index():返回指定元素在列表中的索引, my_list.index(3) 。
sort():对列表中的元素进行排序, my_list.sort() 。
reverse():反转列表中的元素顺序, my_list.reverse() 。

元组

在Python中,元组(tuple)是一种重要的数据类型,以下是关于它的详细介绍:
定义与创建

元组使用圆括号 () 来创建,元素之间用逗号分隔,例如 my_tuple = (1, 2, 3) 也可以省略圆括号直接使用逗号分隔元素来创建,如 my_tuple = 1, 2, 3 。还可以使用 tuple() 函数将其他可迭代对象转换为元组,如 my_tuple = tuple(1, 2, 3) 。
特点

不可变性:元组一旦创建,其元素就不可修改、删除或添加,这保证了数据的完整性和安全性。

有序性:元组中的元素有固定的顺序,可以通过索引访问。
基本操作

访问元素:和列表一样,可使用索引访问元组中的元素,索引从0开始,如 my_tuple1 可获取第二个元素。

切片操作:可以对元组进行切片操作获取子元组,如 my_tuple1:3 会返回索引1到2的元素组成的子元组。

连接与重复:可以使用 + 运算符连接两个元组,使用 * 运算符重复元组,如 tuple1 + tuple2 , my_tuple * 3 。
常用方法

count():统计元组中某个元素出现的次数,如 my_tuple.count(2) 。

index():返回指定元素在元组中的索引, my_tuple.index(3) 。

元组在需要保证数据不被意外修改的场景中非常有用,比如作为函数的参数传递,确保参数在函数内部不会被修改。同时,它还可以作为字典的键,因为字典的键需要是不可变类型。

相关推荐
星云穿梭21 小时前
用Python写一个带图形界面的学生管理系统——完整教程
python
金銀銅鐵21 小时前
用 Pygame 实现 15 puzzle
python·数学·游戏
黄忠1 天前
大模型之LangGraph技术体系
python·llm
hboot2 天前
AI工程师第二课 - 数据处理
人工智能·python·数据分析
用户8356290780512 天前
使用 Python 自动化 PowerPoint 形状布局与格式设置
后端·python
用户8356290780512 天前
用 Python 自动化 PowerPoint 演讲者备注添加
后端·python
黄忠2 天前
01-系统架构设计-LangGraph状态机与多源异构RAG
python
zzzzzz3102 天前
假如我是掘金管理员,我先给评论区装个'代码审查'系统
python·程序员·机器人
砍材农夫2 天前
python环境|conda安装和使用(2)
后端·python
程序员龙叔3 天前
编写高质量 Skill 系列 -- 如何设计需求分析与用例生成的 SKILL
自动化测试·软件测试·python·软件测试工程师·接口测试·性能测试·skill·ai测试