一、什么是python序列?
在python中,序列(sequence) 是一种能够保存多个数据,并且按照一定顺序排列的数据结构。
序列中的每一个元素都有一个对应的位置编号,这个编号叫做索引(index)。
python中常见的序列类型:
| 序列类型 | 是否可修改 | 示例 |
|---|---|---|
| 字符串(str) | 不可修改 | “hello” |
| 列表(list) | 可修改 | [1,2,3] |
| 元组(tuple) | 不可修改 | (1,2,3) |
例如:
nums = [10,20,30,40] print(nums)
输出:
[10,20,30,40]
列表中的每个元素都有自己的位置:
元素: 10 20 30 40
索引: 0 1 2 3
python序列的索引默认从 0开始。
二、序列的特点
python序列主要具有以下特点:
1. 有序
序列中的元素按照一定顺序排列。
例如:
list1 = ["python","java","c++"] print(list1)
结果:
['python','java','c++']
元素的位置不会随机改变。
2. 可以通过索引访问
例如:
languages = ["python","java","go"] print(languages[0]) print(languages[1])
输出:
python
java
3. 支持切片操作
可以获取序列中的一部分数据。
例如:
numbers = [1,2,3,4,5] print(numbers[1:4])
输出:
[2,3,4]
三、python序列索引
1. 正向索引
正向索引从0开始:
names = ["tom","jack","lucy"] print(names[0]) print(names[2])
输出:
tom
lucy
对应关系:
索引: 0 1 2
元素: tom jack lucy
2. 负索引
python支持从后往前访问元素。
最后一个元素索引为:-1
例如:
names = ["tom","jack","lucy"] print(names[-1]) print(names[-2])
输出:
lucy
jack
对应关系:
元素: tom jack lucy
索引: 0 1 2
-3 -2 -1
四、序列切片(重点)
切片是python序列中非常重要的操作。
格式:
序列[start:end:step]
参数说明:
| 参数 | 说明 |
|---|---|
| start | 开始位置 |
| end | 结束位置(不包含) |
| step | 步长 |
1. 基本切片
例如:
nums = [0,1,2,3,4,5] print(nums[1:4])
输出:
[1,2,3]
注意:
结束位置4不会被包含。
2. 从头开始切片
省略start:
nums = [1,2,3,4,5] print(nums[:3])
输出:
[1,2,3]
3. 切片到末尾
省略end:
nums = [1,2,3,4,5] print(nums[2:])
输出:
[3,4,5]
4. 设置步长
例如:
nums = [1,2,3,4,5,6] print(nums[::2])
输出:
[1,3,5]
表示每隔一个元素取一次。
5. 反向切片
使用负步长:
nums = [1,2,3,4,5] print(nums[::-1])
输出:
[5,4,3,2,1]
常用于:
- 字符串反转
- 列表倒序
例如:
text = "python" print(text[::-1])
输出:
nohtyp
五、序列常用操作
python提供了一些通用序列操作。
1. 获取长度 len()
使用len()可以获取序列元素数量。
例如:
nums = [10,20,30,40] print(len(nums))
输出:
4
2. 判断元素是否存在 in
例如:
names = ["tom","jack","lucy"]
print("tom" in names)
输出:
true
不存在:
print("mike" in names)
输出:
false
3. 连接序列 +
多个序列可以连接。
例如:
a = [1,2,3] b = [4,5,6] print(a+b)
输出:
[1,2,3,4,5,6]
4. 重复序列 *
可以让序列重复。
例如:
nums = [1,2] print(nums*3)
输出:
[1,2,1,2,1,2]
5. 最大值和最小值
数字序列可以使用:
- max()
- min()
例如:
nums = [10,50,30] print(max(nums)) print(min(nums))
输出:
50
10
六、列表(list)——最常用的序列
列表是python中使用最多的数据结构之一。
特点:
- 有序
- 可修改
- 可以保存多个不同类型的数据
例如:
student = [
"tom",
18,
95.5
]
print(student)
输出:
['tom',18,95.5]
七、列表元素的增加
1. append()
在列表末尾添加元素。
books = ["python"]
books.append("java")
print(books)
输出:
['python','java']
2. insert()
指定位置插入。
nums=[1,3] nums.insert(1,2) print(nums)
输出:
[1,2,3]
3. extend()
合并两个列表。
a=[1,2] b=[3,4] a.extend(b) print(a)
输出:
[1,2,3,4]
八、列表元素删除
1. remove()
删除指定元素:
nums=[1,2,3] nums.remove(2) print(nums)
结果:
[1,3]
2. pop()
删除指定索引元素:
nums=[10,20,30] nums.pop(1) print(nums)
结果:
[10,30]
3. del
删除元素:
nums=[1,2,3] del nums[0] print(nums)
输出:
[2,3]
九、列表修改元素
列表可以直接修改:
names=["tom","jack"] names[0]="mike" print(names)
输出:
['mike','jack']
十、列表遍历
1. for循环遍历
names=["tom","jack","lucy"]
for name in names:
print(name)
输出:
tom
jack
lucy
2. 使用索引遍历
nums=[10,20,30]
for i in range(len(nums)):
print(nums[i])
输出:
10
20
30
十一、列表排序
sort()
默认升序:
nums=[5,2,8,1] nums.sort() print(nums)
输出:
[1,2,5,8]
降序:
nums.sort(reverse=true) print(nums)
输出:
[8,5,2,1]
十二、列表和其他序列区别
| 特点 | list | tuple | str |
|---|---|---|---|
| 是否有序 | 是 | 是 | 是 |
| 是否可修改 | 是 | 否 | 否 |
| 是否支持索引 | 是 | 是 | 是 |
| 是否支持切片 | 是 | 是 | 是 |
十三、实际应用案例
1. 保存学生成绩
scores=[
88,
90,
76,
95
]
average=sum(scores)/len(scores)
print(average)
输出:
87.25
2. 商品购物车
cart=[
"手机",
"电脑",
"耳机"
]
cart.append("鼠标")
print(cart)
3. 数据处理
data=[5,3,8,1] data.sort() print(data)
结果:
[1,3,5,8]
十四、总结
python序列是学习python数据结构的重要基础。
核心知识点:
python常见序列:
- list
- tuple
- str
序列特点:
- 有序
- 支持索引
- 支持切片
常用操作:
- len()
- in
- 切片
列表重点:
- 添加元素
- 删除元素
- 修改元素
- 遍历
- 排序
掌握序列操作后,可以为后面的python数据处理、自动化、数据分析打下坚实基础。
以上就是python序列之列表、元组、字符串的通用操作详解(超详细版)的详细内容,更多关于python序列常用操作的资料请关注代码网其它相关文章!
发表评论