为了账号安全,请及时绑定邮箱和手机立即绑定

关于切片问题

range()函数可以创建一个数列:

>>> range(1, 101)
[1, 2, 3, ..., 100]

请利用切片,取出:

1. 前10个数;
2. 3的倍数;L[2::3]
3. 不大于50的5的倍数。L[4:50:5]

第二题为什么要从2开始索引,不能从1开始吗?

第三题为什么直至50可以取50?正常来说不是从4到50不包括50吗?

正在回答

2 回答

第二题要求的是3的倍数,第一个3的倍数是在序列2,假如你是从1开始索引的话,结果就是

[2, 5, 8, 11, 14, 17, 20, 23, 26, 29, 32, 35, 38,] 肯定是不对的。

同理第三题是5的倍数,第一个是5的倍数的数在序列4因此从4开始索引。

不大于50,就是小于等于50,当然包含50了


0 回复 有任何疑惑可以回复我~
#1

夜雨倾歌丶 提问者

那应该写成L[4:51:5]才对吧?不是说第二个参数是到50但不包括50的吗?
2019-06-19 回复 有任何疑惑可以回复我~
#2

夜雨倾歌丶 提问者 回复 夜雨倾歌丶 提问者

不好意思,看错了。是50
2019-06-19 回复 有任何疑惑可以回复我~

索引是从0开始的哦,所以第二题索引2对应的是第三个元素就是3然后再取,第三题也是一样,索引50对应的是51所以可以取到50.

0 回复 有任何疑惑可以回复我~
#1

夜雨倾歌丶 提问者

好的谢谢!
2019-06-19 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758622    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

关于切片问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信