分片,步长,索引

在python的基础学习过程中,总绕不开这三个词,而且当你学习完后会发现特别有用,比如一个列表,分片就是得到其中的某一段,步长是取值方法(相隔多少个取值),索引是取第几个

索引:

   l=[1,2,3,4,5,6,7,8,9]

l[0] 第一个索引为0,第二个为1,以此类推,此时为1
l[-1] 最后一个索引为-1,倒数第二个为-2,以此类推,此时为9
l[4] 此时为5

分片:需要指定分片的开始和结尾,前要后不要
   l=[1,2,3,4,5,6,7,8,9]
  l[0:4] 从索引为0的到索引为3的,注意索引为4的不要,此时为[1,2,3,4]
  l[:5] 未指定开头或者结尾时,一律取到第一个或者从后一个,此时为[1,2,3,4,5]
  l[7:] [8,9]
  l[:] [1,2,3,4,5,6,7,8,9],通常用这种方法来生成一个和l内容相同的列表,但是两个列表不是同一对象
步长:
  l=[1,2,3,4,5,6,7,8,9]
  步长为n,相隔n个数取值,默认为1,所以就相隔0个数取值,就是连续取
  l[1:8:2] 这里的2就是步长,相隔1个数取值,此时为[2,4,6,8]
  l[::3] 从头到尾,相隔2个数取值,[1,4,7]
  l[::-3] 这里的步长是负数,表示从尾部开始计算,相隔两个数取值,[9,6,3]
  但是这里必须要注意的是,当步长为正数时,开始的数必须出现在结尾的数之前,当步长为负数时,结尾的数必须出现在开始的数之前,不然得到的就是空列表
  l[a:b:n]
  if n>0:
    b的索引值必须必比a大
  if n<0:
    b的索引值必须必比a小
  l[1:5:2] [2,4]
  l[1:5:-2] []
  l[-1:4:-2] [9,7]
  l[-1:4:2] []
敲黑板了,这是重点

深刻理解分片步长索引非常重要,可以对列表元组字符串灵活取值,实际当中非常有用。

 

原文地址:https://www.cnblogs.com/diwangguilai/p/8657308.html