woxio770 发表于 2018-8-13 08:27:00

Python 切片

1.1   切片
  取list或tuple中的部分元素是非常常见的操作。
  >>> L = ['Michael', 'Sarah','Tracy', 'Bob', 'Jack']
  >>> , L, L]      --很普通的办法
  ['Michael', 'Sarah', 'Tracy']
  >>> l = []
  >>> n = 3
  >>> for i in range(3):      --使用循环
  ...    l.append(L)
  ...
  >>> l
  ['Michael', 'Sarah', 'Tracy']
  切片操作
  >>> L
  ['Michael', 'Sarah', 'Tracy', 'Bob','Jack']
  >>>
  >>>
  >>>
  >>> L                --从索引0位置开始取3个
  ['Michael', 'Sarah', 'Tracy']
  >>> L               --从索引1位置开始取3个
  ['Sarah', 'Tracy', 'Bob']
  >>> L[:]                   --取的全部
  ['Michael', 'Sarah', 'Tracy', 'Bob','Jack']
  >>>L[-1:]               --默认从倒数第一个位置取到最后
  ['Jack']
  >>>L[-3:-1]               --从倒数第三个位置取到倒数第一个位置,共计2个
  ['Tracy', 'Bob']
  >>> L[-1:2]                --空list
  []
  >>> L[:4]                  --默认从顺数第一个位置取到第四个位置,共计4个
  ['Michael', 'Sarah', 'Tracy', 'Bob']
  >>> L= list(range(100))
  >>> L
  
  >>> L[:10]               --取前10个
  
  >>> L[-10:]                --取后10个
  
  >>> L
  
  >>> L             --取第10个到第20个,没两个取一个
  
  >>> L[::5]               --所有元素中每5个取一个
  
  Tuple的切片操作
  >>> (1, 2, 3, 4, 5)[::2]
  (1, 3, 5)
  >>> (1, 2, 3, 4, 5)[:2]
  (1, 2)
  字符串的切片操作
  >>> 'abcdef'[:2]
  'ab'
  >>> 'abcdef'[-4::2]
  'ce'
  切片后,仍然是字符串
  Python没有针对字符串的截取函数,只需要切片一个操作就可以完成,非常简单。
页: [1]
查看完整版本: Python 切片