学习python分片

序列和索引

既然谈到分片,就脱离不了序列和索引这些概念。什么是序列呢? 在Python中,最基本的数据结构是序列(sequence)。序列中的每个元素被分配一个序号——即元素的位置,也称为索引。第一个索引是 0,第二个则是 1,以此类推。序列中的最后一个元素标记为 -1,倒数第二个元素为 -2,一次类推。 下面是一个序列和相关索引位置的操作

===> greeting = "hello"
===>greeting[0]
===> g
===> greeting[-1]
===>o

分片

在了解序列和索引的概念之后,我们来看看分片是什么。分片是python语言自带的一种操作,使用两个分割的索引 获取一定范围的元素。

>>> numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]  
>>> numbers[3:6]  
[4, 5, 6]  
>>> numbers[0:1]  
[1]  
>>> numbers[0:10:2]  
[1, 3, 5, 7, 9]  
>>> numbers[3, 6, 3]  
[4]

上述例子使用分片获取numbers 的第四位到第六位以及第1位的内容,在数学的区间概念中我们使用[3,6) 这样的方式来体现。

分片不仅仅有这样的使用方式,他还有负数方式也能使用,即取第-1个数字,这是python的索引机制所决定的。

numbers[-3:]  
[8, 9, 10]  

分片操作还存在步长这种设定:即每一次获取数据,都是间隔获取的

>>> numbers[0:10:2]  
[1, 3, 5, 7, 9]  
>>> numbers[3, 6, 3]  
[4]  

步长不能为0,但是可以为负数,这样会从左到右边获取数据

>>> numbers[8:3:-1]  
[9, 8, 7, 6, 5]  
>>> numbers[0:10:-2]  
[]  
>>> numbers[10:0:-2]  
[10, 8, 6, 4, 2]  

python语言十分之强大,在于他将一些其他函数通过函数实现的常用语法,融入到日常使用的语法之中,同时屏蔽其中复杂的部分,使得函数简单易用。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 数据结构,是指通过某种方式(例如对元素进行编号)组织在一起的数据元素的集合,这些数据元素可以是数字或者字符,甚至可...
    千释炎阅读 807评论 0 0
  • No.1 python交互界面(解释器)提示符 Python的交互界面有两种提示符,分别是主提示符“>>>”和次提...
    无聊的IT阅读 1,375评论 0 5
  • http://python.jobbole.com/85231/ 关于专业技能写完项目接着写写一名3年工作经验的J...
    燕京博士阅读 7,628评论 1 118
  • 八月一日,十几个孩子过去看来,跟我要一份迟到已久的喜糖,据他们自己说,等了四年才等的糖果,嘿嘿。 他们当中,有的...
    溪水清草阅读 257评论 0 0
  • 长相思·长门怨 比冬阳,赛鸳鸯。 凤冠椒泥恩宠昌,梦君赠海棠。 新人香,旧人凉。 金屋藏娇君已忘,长门怨未央。 木辛
    子夜已子时阅读 284评论 0 1