您的位置:

59. Python slice()

Python slice()

更新:

内置函数slice()用于对给定的对象或序列进行切片。序列可以是字符串、字节、元组、列表或范围。该功能允许指定拼接的开始和结束位置。

 **slice(start, stop, step)** #where all parameters should be integers 

切片()参数:

取三个参数。如果发出第一个和第三个参数,我们可以将语法写成 slice(stop)。

参数 描述 必需/可选
开始 对象切片开始的起始整数。如果未提供,默认为无 可选择的
停止 整数,直到切片发生。切片在索引 stop -1(最后一个元素)处停止 需要
步骤 整数值,确定切片的每个索引之间的增量。如果未提供,则默认为无。 可选择的

切片()返回值

这个返回切片对象包含指定范围内的一组索引。

| 投入 | 返回值 | | If 参数 | 切片对象 |

Python 中slice()方法的示例

示例 1:如何创建切片对象进行切片

 # contains indices (0, 1, 2)
result1 = slice(3)
print(result1)

# contains indices (1, 3)
result2 = slice(1, 5, 2)
print(slice(1, 5, 2)) 

输出:

slice(None, 3, None)
slice(1, 5, 2)

示例 2:如何使用切片对象获取子串

 # Program to get a substring from the given string 

py_string = 'Python'

# stop = 3
# contains 0, 1 and 2 indices
slice_object = slice(3) 
print(py_string[slice_object])  # Pyt

# start = 1, stop = 6, step = 2
# contains 1, 3 and 5 indices
slice_object = slice(1, 6, 2)
print(py_string[slice_object])   # yhn 

输出:

Pyt
yhn 

示例 3:如何获取子列表和子元组

 py_list = ['P', 'y', 't', 'h', 'o', 'n']
py_tuple = ('P', 'y', 't', 'h', 'o', 'n')

# contains indices 0, 1 and 2
slice_object = slice(3)
print(py_list[slice_object]) # ['P', 'y', 't']

# contains indices 1 and 3
slice_object = slice(1, 5, 2)
print(py_tuple[slice_object]) # ('y', 'h') 

输出:

['P', 'y', 't']
('y', 'h') 

示例 4:如何使用负索引获取子列表和子元组

 py_list = ['P', 'y', 't', 'h', 'o', 'n']
py_tuple = ('P', 'y', 't', 'h', 'o', 'n')

# contains indices -1, -2 and -3
slice_object = slice(-1, -4, -1) 
print(py_list[slice_object])  # ['n', 'o', 'h']

# contains indices -1 and -3
slice_object = slice(-1, -5, -2)
print(py_tuple[slice_object]) # ('n', 'h') 

输出:

['n', 'o', 'h']
('n', 'h') 

示例 5:如何使用索引语法进行切片

 py_string = 'Python'

# contains indices 0, 1 and 2
print(py_string[0:3])  # Pyt

# contains indices 1 and 3
print(py_string[1:5:2]) # yh 

输出:

Pyt
yh