python切片操作

1.什么是切片

字符串、列表、元组在python中都符合“序列”这一特征,只要符合这一特征的变量我们都可以用切片(slice)去存取它们的任意部分。

 

切片操作符在python中的原型是:

[start:stop:step]

即:

[开始索引:结束索引:步长值]

开始索引:同其它语言一样,从0开始。序列从左向右方向中,第一个值的索引为0,最后一个为-1.

结束索引:切片操作符将取到该索引为止,不包含该索引的值。

步长值:  默认是一个接着一个切取,如果为2,则表示进行隔一取一操作。步长值为正时表示从左向右取,如果为负,则表示从右向左取。步长值不能为0。

Python代码   收藏代码
  1. li = [1,2,3,4,5,6,7]  
  2.   
  3. print li[2]           #输出3,因为索引为2的值为3  
  4. print li[2:4]        #输出[3,4],从索引2开始取,到索引为4的5为止(不包含5)  
  5. print li[-1]          #输出7,反向取第一个  
  6. print li[-1,-5,2]   #输出[],从反向第1个向反向第5个取,但步长为2,表示正向相隔二个取值。  
  7. print li[-1,-5,-2]  #输出[7,5],不用解释啦.   

有时候我们可以省略开始索引,结束索引,如:

Python代码   收藏代码
  1. li = [1,2,3,4,5,6,7]  
  2. print li[1:]           #输出[2,3,4,5,6,7],省略终止索引,表示取起始索引之后的所有值,等效于li[1:len(li)]  
  3. print li[:3]           #输出[1,2,3],省略起始索引,表示从0开始取,等效于li[0:3]  
  4. print li[:]             #输出[1,2,3,4,5,6,7],省略起始索引、终止索引、步长值表示取全部,等效于li[0:len(li):1]  
  5. print li[::]            #输出[1,2,3,4,5,6,7],省略起始索引、终止索引、步长值表示取全部,等效于li[0:len(li):1]  
  6. print li[::-1]         #输出[7,6,5,4,3,2,1],省略起始索引、终止索引,步长值为-1,表示反向获取  

 


        根据这个特性,我们可以很方便对某个序列进行倒序取值,这个方法比reverse方法更方便,且适用于没有reverse方法的字符串和元组。相对reverse而言,切片的方法不会改变列表的结构,所以这是在实际应用中比较有用的一个技巧。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值