当前位置:首页>python>Python开发从零开始-17-基础语法(序列)

Python开发从零开始-17-基础语法(序列)

  • 2026-10-11 07:47:52
Python开发从零开始-17-基础语法(序列)
前文小编已经介绍了Python的基本数据类型和复杂数据类型。其中很多时候出现“序列”这一概念,为便于大家更好的掌握Python的数据类型,本文从序列角度对这些数据类型进行小结。
一、什么是序列

Python 序列‌(Sequence)是指一块用于存放多个值的连续内存空间(内存空间是指一个程序或进程分配的物理地址连续的一块内存区域,其所有代码、数据和栈必须存放在该连续区域内,不能分散在多个不相邻的内存块中)。简单点理解,序列就是能够连续存放元素的对象。

在Python中只要数据类型实现了序列协议相关方法,就可以称之为序列。

【小编提示】
关于序列协议相关方法,参见Python官方文档:

https://docs.python.org/zh-cn/3/c-api/sequence.html

由于涉及面向对象概念,本文不深入讨论,建议大家深入掌握面向对象概念后,再参照官方文档深入了解。

二、序列的分类

(一)按可修改性分类
1、可变序列

在 Python 中,‌可变序列类型‌是指创建后可以修改其内容(如添加、删除、替换元素)的序列类型。它们支持原地操作,不会返回新对象,而是直接修改自身。

常见可变序列包括:

  • ‌列表(List)‌:使用方括号 [ ] 括起来的元素序列,其中的元素可以是不同的数据类型。例如,list1 = [1, "hello", 3.14]。

  • ‌字典(Dictionaries)‌:使用花括号{ } 括起来的键值对集合,键和值可以是不同的数据类型。例如,dict1 = {'name': 'Alice', 'age': 25}。

  • ‌集合(Set)‌:使用花括号 { }(不同于字典)创建的、无序且元素唯一的可变集合。例如,set = {1, 2, 3}。

  • ‌字节数组(Byte Arrays)‌:使用 bytearray() 函数创建的字节序列,可以修改。例如,ba = bytearray(b"hello")。

2、不可变序列

不可变序列一旦创建,其内容就不能被改变。尝试修改不可变序列会导致错误或抛出异常。

常见的不可变序列包括:

  • ‌字符串(Str)‌:使用单引号 ' ' 或双引号 " " 包含的字符序列。例如,s = "hello"。

  • ‌元组(Tuples)‌:使用圆括号 ( ) 括起来的元素序列,其中的元素可以是不同的数据类型。例如,tup1 = (1, "hello", 3.14)。

(二)按顺序分类
1、有序序列

有序序列是指元素按特定顺序排列,可以通过索引去访问,支持使用截取(切片)。常见有序序列包括:列表、元组、字符串等。

2、无序序列
无序序列是指不关心序列元素排列顺序。无序序列操作通常涉及到筛选、转换、合并等。常见无序序列包括:字典、集合等。
三、序列的操作
(一)序列的通用操作
序列的通用操作包括:
  • in 或 not in 成员运算符
  • +(拼接)和 * (重复)
  • 截取(切片)操作
  •  len() 函数(序列长度)
  • min()和 max() 方法(最小值、最大值)
  • count() 和 index() 方法(元素出现次数统计、元素首次出现的索引)
(二)可变序列的通用操作
除序列通用操作外,不可变序列还可以通过索引访问元素。
(三)可变序列的通用操作
除序列通用操作外,可变序列通常还包括:append() 、clear()、copy() 、extend() 、insert() 、pop() 和 remove() 等方法
序列的操作方法非常多,小编不再一一列举,建议初学者多查阅Python帮助文档进行了解。
Python官方文档:

https://docs.python.org/zh-cn/3/library/stdtypes.html#immutable-sequence-types

最新文章

随机文章