python中的range()和array()函数

来源:互联网 发布:数据录入员招聘58同城 编辑:程序博客网 时间:2024/04/18 20:51

我们在Python中存在一个非常好用的range()与array()函数,下面作用法简要介绍。

一、range()函数

复制代码
  >>> range(1,10)   ——>不包括10    [1, 2, 3, 4, 5, 6, 7, 8, 9]  >>>range(1,10,2)  ——>1到10,间隔为2(不包括10)    [1, 3, 5, 7, 9]  >>>range(10)    ——>0到10,不包括10  [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
复制代码

  我们在编写python程序时,通过这样就可以直接列出一个序列的数字出来了。方便快捷...

 

二、array()函数

  首先看列List表示内容:

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

  这个是一个数字列表,没有顺序的。

              [2,3,9,1,4,7,6,8] 

  从前面开始的顺序列表为{0,1,2,3,4,5,6,7}——>前面序号

  从后面开始的顺序列表为{-8,-7,-6,-5,-4,-3,-2,-1}——>后面序号

 

复制代码
  >>>Array[0:]  ——>切片从前面序号“0”开始到结尾,包括“0”位  [2, 3, 9, 1, 4, 7, 6, 8]  >>>Array[:-1]  ——>切片从后面序号“-1”到最前,不包括“-1”位  [2, 3, 9, 1, 4, 7, 6]  >>>Array[3:-2]  ——>切从前面序号“3”开始(包括)到从后面序号“-2”结束(不包括)  [1, 4, 7]  >>>Array[3::2]  ——>从前面序号“3”(包括)到最后,其中分隔为“2”  [1, 7, 8]  >>>Array[::2]  ——>从整列表中切出,分隔为“2”  [2, 9, 4, 6]  >>> Array[3::]  ——>从前面序号“3”开始到最后,没有分隔  [1, 4, 7, 6, 8]
  
>>> Array[3::-2]  ——>从前面序号“3”开始,往回数第二个,因为分隔为“-2”  [1, 3]
  
  >>> Array[-1]    ——>此为切出最后一个
  8

  >>>Array[::-1]    ——>此为倒序
  [8, 6, 7, 4, 1, 9, 3, 2]
复制代码

 

 问题:

    关于Array[0:]与Array[:-1],分片问题。

  它们的分片结果为:

      

  问题:为何,都是同样是最前和最后,得出来的分片却:[0:]取全部,[:-1]却不取“-1”,这是为什么?

 

  原因:

  分片原理,若没有指定左边界或者右边界,则默认取到最左或者最右值。

  [:-1]=[0:-1]  ——>界定的分片边界为索引取值边界的和最后一个值,"-1"为最后一个索引值

0 0
原创粉丝点击