Python 序列是什么?
Python 最基本的数据结构为序列(sequence)。序列其实是一个总称,它可以细分为 3 种:列表、元组、字符串,如下图所示。

序列(如下图所示)中的每个元素都有一个编号,这个编号也叫做 “下标”、“位置” 或 “索引”。小伙伴们要清楚这几种叫法,它们指的都是一个意思。其中第一个元素的下标为 0,第二个元素的下标为 1,依此类推。请特别注意,元素的下标是从 0 开始,而不是从 1 开始的。

提示: 如果你是初学的小伙伴,尚未接触过列表、元组、字符串这几种序列,可以跳过下面部分的内容,等学完了这 3 个再来这里过一遍,这样才会有更深的理解。
Python 序列的相同操作
虽然不同的序列,它们的操作不尽相同,但也存在一些共性。了解它们之间的相同操作,可以让我们对它们有更深的理解。列表、元组、字符串这 3 种序列有以下相同的操作。
- 序列切片。
- 序列加法。
- 序列乘法。
- 判断元素是否在序列中。
示例 1:序列切片
# 列表
colors = ['红', '橙', '黄', '绿', '蓝']
print(colors[1:3])
# 元组
nums = (21, 10, 52, 36, 88)
print(nums[0:2])
# 字符串
site = 'lvyenet'
print(site[-3:])运行结果如下。
['橙', '黄']
(21, 10)
net示例 2:序列加法
# 列表
colors = ['红', '橙', '黄'] + ['绿', '蓝']
print(colors)
# 元组
nums = (21, 10, 52) + (36, 88)
print(nums)
# 字符串
site = 'lvye' + 'net'
print(site)运行结果如下。
['红', '橙', '黄', '绿', '蓝']
(21, 10, 52, 36, 88)
lvyenet示例 3:序列乘法
# 列表
colors = ['红', '绿', '蓝'] * 2
print(colors)
# 元组
nums = (21, 10, 52) * 2
print(nums)
# 字符串
site = 'lvye' * 2
print(site)运行结果如下。
['红', '绿', '蓝', '红', '绿', '蓝']
(21, 10, 52, 21, 10, 52)
lvyelvye示例 4:判断元素是否在序列中
# 列表
colors = ['红', '橙', '黄', '绿', '蓝']
result1 = '紫' in colors
print(result1)
# 元组
nums = (21, 10, 52, 36, 88)
result2 = 52 in nums
print(result2)
# 字符串
site = 'lvyenet'
result3 = 'lvye' in site
print(result3)运行结果如下。
False
True
TruePython 序列的内置函数
Python 为序列提供了很多有用的内置函数,常用的如下表所示。
| 函数 | 说明 |
|---|---|
| list() | 将其他序列转换为列表 |
| tuple() | 将其他序列转换为元组 |
| str() | 将其他序列转换为字符串 |
| len() | 获取序列的长度 |
| max() | 获取序列的最大值元素 |
| min() | 获取序列的最小值元素 |
当然了,小伙伴们也可以在我们的 “Python 参考手册” 中找到所有的内置函数。
