鱼C论坛

 找回密码
 立即注册
查看: 970|回复: 3

[已解决]关于列表切片的困惑

[复制链接]
发表于 2024-11-17 09:56:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
列表(I)课后测试题中有如下这道题:
>>> [5, "上", 4, "山", 3, "打", 2, "老", 1, "虎"][-2::-2]

答案是 [1, 2, 3, 4, 5]

我想的答案却是[1],我的逻辑是按照[5, "上", 4, "山", 3, "打", 2, "老", 1, "虎"][-2:]执行的话得到[ 1, "虎"],然后按照反向索引-2取值的话就应该是1了,请大侠指定一下我的逻辑哪里出错了,谢谢!
最佳答案
2024-11-17 10:40:48
本帖最后由 jackz007 于 2024-11-17 11:46 编辑

     [5, "上", 4, "山", 3, "打", 2, "老", 1, "虎"][-2::-2]
     [-2::-2] 前面的 -2 是指从 -2 开始索引,中间为空代表索引到结束,后面的 -2 是 step,意思是逆向索引(从后往前),每隔 1 个元素提取 1 个元素,这个列表一共有 10 个元素,所以,切片后一共提取到 5 个元素,由于是逆向索引,所以,新列表的元素顺序与原列表相反。
     楼主可以考察一下:
  1. print('i love the world !'[::-1])
复制代码

     虽然是字符串,但是切片的原理是一样的。      
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2024-11-17 11:32:39 | 显示全部楼层
jackz007 发表于 2024-11-17 10:40
[5, "上", 4, "山", 3, "打", 2, "老", 1, "虎"][-2::-2]
     [-2::-2] 前面的 -2 是指从 -2 开始索 ...

非常感谢,我想明白啦,谢谢哈
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-10-24 03:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表