马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- [5, "上", 4, "山", 3, "打", 2, "老", 1, "虎"][-2::-2]
复制代码
答案是[1,2,3,4,5]
如果是
- [5, "上", 4, "山", 3, "打", 2, "老", 1, "虎"][::-2]
复制代码
答案是['虎', '老', '打', '山', '上']
然后我这么理解
从左到有看代码 [5, "上", 4, "山", 3, "打", 2, "老", 1, "虎"][-2::-2]
第一个-2 读取的值是 1 然后::-2 就是 倒着从1开始取值 间隔是2 我这么理解不会出错吧
本帖最后由 ba21 于 2022-4-10 12:45 编辑
你这个问题 ,其实就是对第3个参数步长的理解。
1. 绝对值 是它的步长。
2. 当start没有指定时,正负是取值方向。
3. 对于你的理解最重要的一点。步长的取法,应是从起始位取值,下一位数,每 “步长”取一位。
如: [5, "上", 4, "山", 3, "打", 2, "老", 1, "虎"][::-2]
从"虎"开始取,然后,下一位数1,在下一位数2,数到2取值, "老"
如: [5, "上", 4, "山", 3, "打", 2, "老", 1, "虎"][-2::-2]
注,加了start,负数,从后取,最后一位是-1,-2就是从1开始取,然后,下一位数1,在下一位数2,数到2取值2
|