Python 是一种广泛使用的高级通用编程语言,常用于开发图形用户界面(GUI)应用程序和Web应用程序。
在本文中,我们将学习 Python 编程中的一个重要主题:Python 切片。
什么是索引?
索引是列表、元组或字符串中单个字符或元素的位置。索引值总是从 0 开始,到元素总数减 1 结束。
正索引
正索引是从序列的开头开始计数的。例如,对于一个包含 5 个元素的列表 [a, b, c, d, e]
,其索引位置如下:
0 1 2 3 4
[ a , b , c , d , e ]
a
的索引是 0b
的索引是 1c
的索引是 2d
的索引是 3e
的索引是 4
负索引
负索引允许从序列的末尾开始计数,而不是从开头。负索引从 -1 开始,表示最后一个元素,然后依次向前递减。例如,对于同一个列表 [a, b, c, d, e]
,其负索引位置如下:
-5 -4 -3 -2 -1
[ a , b , c , d , e ]
a
的负索引是 -5b
的负索引是 -4c
的负索引是 -3d
的负索引是 -2e
的负索引是 -1
示例
正索引示例
my_list = ['a', 'b', 'c', 'd', 'e']
# 访问第一个元素
first_element = my_list[0]
print(first_element) # 输出: a
# 访问第三个元素
third_element = my_list[2]
print(third_element) # 输出: c
负索引示例
my_list = ['a', 'b', 'c', 'd', 'e']
# 访问最后一个元素
last_element = my_list[-1]
print(last_element) # 输出: e
# 访问倒数第三个元素
third_last_element = my_list[-3]
print(third_last_element) # 输出: c
什么是切片?
切片是从字符串、列表或元组中提取部分元素的操作。通过指定元素的索引,切片允许用户访问特定范围内的元素。
基本语法
object[start:stop:step]
- start:切片的起始索引(包含)。默认为 0。
- stop:切片的结束索引(不包含)。默认为序列的长度。
- step:步长,即每次跳过的元素数量。默认为 1。
示例
字符串切片
my_string = "Hello, World!"
# 从索引 0 到 5(不包含 5)
substring = my_string[0:5]
print(substring) # 输出: Hello
# 从索引 7 到末尾
substring = my_string[7:]
print(substring) # 输出: World!
# 从索引 0 到 5,步长为 2
substring = my_string[0:5:2]
print(substring) # 输出: Hlo
# 反向切片
substring = my_string[::-1]
print(substring) # 输出: !dlroW ,olleH
列表切片
my_list = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# 从索引 1 到 6(不包含 6)
sublist = my_list[1:6]
print(sublist) # 输出: [1, 2, 3, 4, 5]
# 从索引 2 到 8,步长为 2
sublist = my_list[2:8:2]
print(sublist) # 输出: [2, 4, 6]
# 反向切片
sublist = my_list[::-1]
print(sublist) # 输出: [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
元组切片
my_tuple =