python切片获取非连续序列实例

1,477次阅读
没有评论

python切片获取非连续序列实例

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免费测试

相关文章:

版权声明:wuyou2021-05-08发表,共计865字。
新手QQ群:570568346,欢迎进群讨论 Python51学习