python中切片操作总结

        以前对python中切片操作一知半解,能完成基本的切片操作,但是遇到切片中有负数或者步长为负数情况,就比较糊涂,今天特意总结下

#  切片操作传入一个参数:

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

print a[2] # 从左向右,位置为第二个

print a[-1] # 从右向左,位置为第一个

 

# 切片取完整的列表信息

print a[:]  # 获取全列表信息

print a[::] # 获取全列表信息

print a[::-1] # 将列表翻转 

 

# 传入两个参数,a[start_inde:end_index:step]   

这个需要对每个参数进行解释:

start_index是从这个参数开始寻找,end_index是结束,step是步长

如图所示,切片会取前四个参数,步长长为2,最后一个是end_index-1参数

这里注意,步长是2,是正数,表示从左向右取数,因为步长是2,所以取到的是0,2,

如果步长为1,就是0,1,2,3

 

当步长传入为负数时,从右向左取数,可以查看下面两种情况

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

因为切片取数方向问题,所以,a[0:4:-2],从右向左,步长为2,所以输出为空,

a[4:0:-2],从第四个是第一个数,所以输出4,2

此处记住切片的步长是取数方向,start_index是正数从左侧开始,如果为负数,最末位起始位置是-1,end_index同样的道理,这样就不会出错了

 

深度解析切片:

切片操作调用python是方法:__getitem__()

大家有兴趣可以看看help(a.__getitem__(4))的解析

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值