技术文章 > 头条 >  Python > 正文

python中切片怎样获取非连续的序列?

当我们想要从序列中获取一些元素时,可以使用切片来进行操作。在大多数的情况下,我们会选择一系列连续的元素。那么在不连续元素的选择上,就需要对step_size的值进行修改。下面我们先简单了解切片的概念,然后就修改step_size的值获取不连续元素,带来详细的讲解。

1、概念

切片(slice)是取部分元素的操作。列表list,字典dic,字符串,元组均可进行切片操作。

提取单个元素时,返回结果的类型为该元素的类型;切片返回值类型为列表。

2、非连续序列实例

切片(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表示从结束到开始切片。

以上就是python中切片获取非连续序列的方法,关键在于对于step_size的设置。大家学会这种特殊的切片方法,可以多展开相关练习加强记忆。

免费视频教程
本教程部分素材来源于网络,版权问题联系站长!
相关文章
  python中urlretriev获取远程文件的方法
  python中切片怎样获取非连续的序列?
  python3函数有哪些高级特性
  在python中defaultdict计算键值的和
  python中defaultdict如何避免KeyError异常
相关视频章节
  什么是tkinter窗口
  例子3 登录窗口
  例子2 登录窗口
  例子1 登录窗口
  pack grid place 放置位置
作者信息

python学习网

认证0级讲师

最近文章
python在协程中增加任务 455
python pyg2plot的原理 353
python中pyg2plot如何使用? 160
推荐视频
视频教程分类