python切片总结

一、切片的2种索引方向
如果掌握切片方法,就能对所有目标值进行随意切取,然鹅可切片的目标对象有2种索引方向:正索引、负索引。如下图所示,
以 a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]举例:

在这里插入图片描述

这个字符串 a 的正索引是由左往右,头下标是0,尾下标是9;
它的负索引是由右往左,头下标是-1,尾下标是-10.

二、切片介绍:

python中切片是用来切割可迭代对象(容器)

一个完整的切片是包含三个参数和两个冒号

start:切片的起始位置,如果没有值的话从头开始

end:切片的结束位置,但是不包含end(前闭后开),如果没有值的话表示切割到结束为止

step :步长,默认取值为1,如果为正数的情况表示从左往右,如果为负数表示从右往左

切记:步长正负决定切片方向,非常重要!!
当未写start_index、end_index的值时,都默认,从索引的端点处开始

三、切片例子:

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

1. 切割单个值

>>> a = [0,1,2,3,4,5,6,7,8,9]

>>> a[0]

0

>>> a[4]

4

2. 切割完整对象

>>> a[ : ]

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

>>> a[ : : ]

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

>>> a[ : :-1]

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

3. start和end全部取正数的情况

>>> a[1:6]

[1, 2, 3, 4, 5]

>>> a[1:6:-1]

[]

>>> a[6:1:-1]

[6, 5, 4, 3, 2]

>>> a[:6]

[0, 1, 2, 3, 4, 5]

4.start和end全部取负数的情况

>>> a[ :-6]

[0, 1, 2, 3]

>>> a[-1:-6]

[]

>>> a[-1:-6:-1]

[9, 8, 7, 6, 5]

5.start和end正负混合情况

>>> a[1:-6]

[1, 2, 3]

>>> a[1:-6:-1]

[]

>>> a[-1:6]

[]

6. 连续的切片操作

>>> a[ :8][2:5][-1:]

[4]

解释:

a[:8] ---- [0,1,2,3,4,5,6,7] [0,1,2,3,4,5,6,7]

[2:5]----[2,3,4] [2,3,4]

[-1:] ----[4]

7. 切片中的三个参数为表达式

>>> a[1+2:2*3:7%2]

[3, 4, 5]

8. 切片可以操作其他的对象

>>> t = (1,2,3,4,5)

>>> t[1:3]

(2, 3)

>>> s = "ACDRF"

>>> s[1:3]

'CD'

注意点总结: 1. 如果进行切片操作的时候,超出下标不会报错

2. 如果切片操作的时候方向相互矛盾的话,不会报错,返回的空

3. 在python中进行反向输出列表

第一种:循环 第二种:[::-1] 第三种:reverse()


————————————————
版权声明:本文部分为优快云博主「rap小浣熊」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/weixin_44162375/article/details/123589228

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值