惬意上手Python —— 切片

1. 切片介绍

切片是Python独有的, 是一种操作序列类型(如字符串、列表、元组等)的方法,它可以从序列中提取一部分元素生成一个新的序列。切片操作使用冒号分隔的起始和结束索引来指定要提取的元素范围。

切片操作的语法如下:

sequence[start:end]

其中,start表示切片的起始索引,end表示切片的结束索引。需要注意的是,切片操作是左闭右开的,即包含起始索引对应的元素,但不包含结束索引对应的元素。

切片操作还可指定每次提取元素的间隔,如step表示步长。例如,sequence[start:end:step]表示从起始索引开始,每隔step个元素提取一个元素,直到结束索引的前一个元素。

2. 切片操作 

2.1 字符串、列表、元组切片

字符串切片: 

# 字符串切片
s = 'hello world'
print(s[0:5])  # 输出 'hello'
print(s[7:12])  # 输出 'world'
print(s[::2])  # 输出 'hlo ol'

输出结果:

hello
orld
hlowrd


列表切片:

# 列表切片
lst = [1, 2, 3, 4, 5]
print(lst[1:4])  # 输出 [2, 3, 4]
print(lst[:3])  # 输出 [1, 2, 3]
print(lst[::2])  # 输出 [1, 3, 5]

 输出结果:
[2, 3, 4]
[1, 2, 3]
[1, 3, 5]


 元组切片:

# 元组切片
tup = (1, 2, 3, 4, 5)
print(tup[1:4])  # 输出 (2, 3, 4)
print(tup[:3])  # 输出 (1, 2, 3)
print(tup[::2])  # 输出 (1, 3, 5)

 输出结果:
(2, 3, 4)
(1, 2, 3)
(1, 3, 5)

2.2 切片操作要求

对字符串、列表和元组进行切片操作时,有以下几个要求:

  1. 切片索引必须是整数:切片操作使用索引来指定要提取的子集范围。这些索引必须是整数值,不能是浮点数或其他类型。

  2. 索引必须在合法范围内:切片操作中的索引必须在对象的有效索引范围内。例如,如果一个列表有5个元素,那么合法的索引范围是0到4。如果索引超出了这个范围,Python会引发IndexError异常。

  3. 起始索引必须在结束索引之前:切片操作由起始索引和结束索引定义。起始索引是要提取的子集的第一个元素的索引,而结束索引是要提取的子集的最后一个元素的下一个索引。起始索引必须在结束索引之前,否则返回的子集将为空。

  4. 切片操作不会修改原始对象:切片操作会返回一个新的对象,而不会修改原始对象。原始对象保持不变。

  5. 切片操作可以包含可选的步长参数:切片操作还可以指定一个可选的步长参数,用于控制提取子集时的间隔。默认情况下,步长为1,表示提取连续的元素。可以使用负数的步长来反向提取元素。

总之,切片操作是一种灵活和方便的方法,用于从字符串、列表和元组等序列类型中提取子集。通过遵守上述要求,可以正确使用切片操作来获取所需的子集。 

over,喜欢作者可以给个关注哦,持续更新中 

惬意上手Python —— 切片_第1张图片 

你可能感兴趣的:(python,开发语言)