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

[2::3]为什么指的是3的倍数?[4:50:5]呢?

如题,能懂[::2]但不懂[2::3]

正在回答

5 回答

[start:stop:step]

start 包括第一位 省略则为列表等数据结构的第一个元素

stop 不包括最后一位数

step 指的是步长,步长为几,则为几的倍数

题主加油,慢慢来


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

慕粉3488718 提问者

非常感谢!
2016-07-08 回复 有任何疑惑可以回复我~
#2

慕粉3553468

没慧根。这样讲就清楚多了!
2016-07-19 回复 有任何疑惑可以回复我~

[2::3]为什么指的是3的倍数

是在特定的范围,索引下标值一般从0开始依次加1,2即为索引下标的0、1、2...,实际list的第三个数值,3为间隔,

当list从1开始,2的索引值为3,间隔又为3,因此输出的是3的倍数

[4:50:5]

综上所述,则索引四的下标为5,间隔为5,中间截取前50,所以是50以下5的倍数

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

range(1,101) 中的元素为[1,2,3,4,5,6,7...100]

其中0号位元素为1,    1号位元素为2   ,99号位元素为100.

第一个3的倍数是数字3,是list中的第2号元素,就要从2开始,这是[2::3]中2的来源

两个分号之间没有数字,默认为list 最后

因为是3的倍数,所以最后一位是3,综上[2::3]

前50中5的倍数,第一个是数字5,在list中是第4号位元素,所以第一位为4

因为限定了前50中5的倍数,第50位元素对应的是数字51(不含51)

间隔是5,所以最后一位是5

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

[2::3]这里面的2表示的是起始数的索引,3表示的是从每三个数中取出一个

类似的,[4:50:5]表示我要取的数的起始值是原tuple的下标为4的数,也就是5,每隔5个数取出一个,直到下标为50的数为止

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

2是指切片起点为索引值为2(即第三个数)的数,也就是数字3,中间没有写终点是指到最后一位数为止,3是指步长为3(3的倍数)。同理[4:50:5]。

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

举报

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

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

进入课程

[2::3]为什么指的是3的倍数?[4:50:5]呢?

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