Python学习—06切片

Python里提供了切片(Slice)操作符获取列表里的元素。

示例:

  1. >>> L = [1,2,3,4,5]
  2. # 取前2个元素,传统方法
  3. >>> [L[0],L[1]]
  4. [1,2]
  5. # 取前2个元素,使用切片
  6. >>> L[0:2]
  7. [1,2]

L[0:2]表示,从索引0开始取,直到索引2为止,但不包括索引2。

如果第一个索引是0,还可以省略:

  1. >>> L[:2]
  2. [1,2]

也可以倒数取元素:

  1. >>> L[-2:]
  2. [4,5]

L[-2:]表示倒数第2个开始直到结束。记住倒数第一个元素的索引是-1。

如果不指定开始和结束,只写[:]就可以原样复制一个list:

  1. >>> L[:]
  2. [1,2,3,4,5]

这个技巧很有用,在函数里如果我们不希望改变原列表,就可以使用该技巧复制出一个列表,传给函数。

切片还支持第三个参数,表示每隔几个元素操作:

  1. >>> L[::2]
  2. [1,3,5]

tuple也是一种list,唯一区别是tuple不可变。因此,tuple也可以用切片操作,只是操作的结果仍是tuple:

  1. >>> (0, 1, 2, 3, 4, 5)[:3]
  2. (0, 1, 2)

字符串’xxx’也可以看成是一种list,每个元素就是一个字符。因此,字符串也可以用切片操作,只是操作结果仍是字符串:

  1. >>> 'ABCDEFG'[:3]
  2. 'ABC'
  3. >>> 'ABCDEFG'[::2]
  4. 'ACEG'

很多编程语言针对字符串会提供很多字符串截取函数,例如substr。Python使用简单的切片操作即可完成同样的功能。

作者: 飞鸿影
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
出处:https://www.cnblogs.com/52fhy/p/6260585.html