python中切片(slice)是取部分元素的操作。列表list,字典dic,字符串,元组均可进行切片操作。
提取单个元素时,返回结果的类型为该元素的类型;切片返回值类型为列表。
非连续序列实例
切片(slice)用于从给定的序列中提取元素的连续序列/子序列。默认情况下,step_size为1,因此生成一个连续序列。但是,我们可以为step_size提供任何值来获得非连续的元素序列。
# Python program to rotate an array by 'd' elements. def rotate(arr, d): return arr[d:] + arr[:d] if __name__ == '__main__': arr = [1, 2, 3, 4, 5, 6, 7, 8] arr = rotate(arr, 3) print (arr) # prints [3 ,4, 5, 6, 7, 8, 1, 2]
这里,我们再次连接两个切片操作的结果(列表)。首先,我们将列表从索引’ d ‘切片到结束,然后从开始切片到索引’ d ‘。
# Python program to reverse an array. def reverse(arr): return arr[::-1] if __name__ == '__main__': arr = [1, 2, 3, 4, 5, 6, 7, 8] arr = reverse(arr) print (arr) # prints [8 ,7, 6, 5, 4, 3, 2, 1]
这是一个显示step_size用法的例子。步长为-1表示从结束到开始切片。
当我们想要从序列中获取一些元素时,可以使用切片来进行操作。在大多数的情况下,我们会选择一系列连续的元素。那么在不连续元素的选择上,就需要对step_size的值进行修改。
以上就是python中切片获取非连续序列的方法,关键在于对于step_size的设置。大家学会这种特殊的切片方法,可以多展开相关练习加强记忆。
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试