python切片

python切片
python的切片是对列表的操作,我以前总是记不住各种类型,比如逆序,比如隔一个去一个,取所有,取倒数10个等等。

现在发现,其实就是没有对列表切片的基本概念没理解,理解了就不用去记了。

我们来看看列表切片的构成:

  • 首先切片是由中括号[ ]括起来的
  • 由起始索引start,结束索引end,和步长step三部分构成
  • 中间有2个冒号 :来隔开。第一个冒号隔开的是起始结尾索引,第二个冒号后边跟的是步长。
  • 从起始索引开始取值,每一次取值后,去下一个值时,索引加上步长
  • 最右侧的end索引对应的值取不到,如果end为空,则取到最后
[start : end : step]

注意:start, end, step以及第二个冒号,有很多时候是可以不写的,具有不同的意义

先写一个列表:

a = [10, 20, 30, 40, 50, 60, 70,80]
  • 第二个冒号和step,默认是不写的,表明步长为1,比如 a[2: 4]等价于a[2:4:1],结果就为[ 30, 40],取出的是索引2和3的值构成新的列表,记得索引右侧是取不到的,即a[4]是没有取到的。
  • a[:2]等价于a[0:2:1],结果为[10, 20]
  • a[7:]等价于a[7:8:1],从索引7到最后,结果为[80]
  • a[-1]取的是倒数第一个值
  • a[-3:-1]等价于a[-3 : -1 : 1],取的是a[-3], a[-2]两个值,即[60, 70],其中a[-1]是取不到的,如果要取最后三个,需要写成a[-3:]的方式
  • a[:-4:-1]表示取出最后三个值,并逆序,结果为[80, 70, 60]
  • a[-3::-1]表示的索引为-3,-4, -5,-6, -7, -8,所以结果为[60, 50, 40, 30, 20, 10]
  • [::-1]等价于[0:8:-1],实现逆序,每一次取的是a[0-1] = a[-1], a[0-1-1] = a[-2]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值