做题记录——切片操作和​​​​​​​index() 函数

解题过程:

2,4,9,3,0,7,55,31,25,17

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

40

38=40-2 [4,9,3,0,7,55,31,25,17] 1

36=40-4 [9,3,0,7,55,31,25,17] 2

31=40-9 [3,0,7,55,31,25,17] 3——7

[i,nums[i+1:].index(res)+i+1]

[2,nums[3:].index(31)+2+1]

[2,4+2+1]

[2,7]

切片操作

索引是从0开始的,因为内存地址是从0开始,若以0为基准数,偏移量就是地址,简化了内存地址计算。

以0,1,2,3,4,5,6,7,8,9这十个数字为例:

例1:

>>>a[1:6:-1]     # step=-1,决定了从右往左取值,而start_index=1到end_index=6决定了从左往右取值,两者矛盾。

>>> [ ]         # 输出为空列表,说明没取到数据。

例2:

>>>a[-1:-6]     # step=1,从左往右取值,而start_index=-1到end_index=-6决定了从右往左取值,两者矛盾。

>>> [ ]

例3:

>>>a[:6:-1]      # step=-1,从右往左取值,从“终点”开始一直取到end_index=6。

>>> [9, 8, 7]

例4:

>>>a[6::-1]      # step=-1,从右往左取值,从start_index=6开始,一直取到“起点”。

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

步长为正,左闭右开;

步长为负,左开右闭

index() 函数

index() 函数用于从序列s中找出某个值第一个出现时的索引位置。

s.index(x[,i[,j]])

s——序列类型数据(字符串、元组、列表)

x—— 查找的对象。

该方法返回查找对象的索引位置,如果没有找到对象则抛出异常。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值