关于 range()函数的使用


我也真是服了,竟然这么基础的东西还没掌握到。
所以我也是来写一下经验。

  • 第一点:关于range()里面的参数有三个,分别是start,stop,step. 最关键的是给range传参的时候是不接受关键字传参的。在这里插入图片描述

range() 不是 python 函数。是C型; C 类型遵循不同的参数规则,range() 仅接受位置参数

  • 第二点:如果仅传入了两个参数,那么默认是将这两个参数当成 start和stop。所以如果stop比start小的话,是不会产生任何行为的,意思就是不会有任何输出。

okay, 那么下面总结一下使用的方法及其对应的输出:

#第一种
>>> range(5)   #等价于range(0, 5),默认从0开始
[0, 1, 2, 3, 4]

#第二种
>>> range(1, 11)     # 从 1 开始到 10
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

#第三种
>>> range(0, -10, -1) # 负数
[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]

#第四种
>>> range(0, -10)
没有任何输出

再次理解(更新20241029)

今天再次看到我写的这个帖子,看到range(0, -10, -1)我思考了一会,觉得我发现了一个好的理解方式来学习range的使用。
首先,对于函数的三个参数,其中star,end是比较好理解的,step的话我们不要仅仅理解为步长,要进一步认识到这个参数是一个带方向的步长。这样就好理解了:

  • 如果step为负数,那么意味着在一个直线轴上,步长是朝向负半轴的,比如对于range(0, -10, -1)的话,就是起点是0,终点是 -10, 步长为1,朝向负半轴。因此输出是0, -1, -2, -3 ......
  • 如果step没有指定,那默认就是朝正半轴方向,比如对于range(0, -10)的话,就是起点是0,终点是 -10, 步长为1,朝向正半轴,你想想,沿着正半轴从0出发怎么也不可能终点是负数啊,因此函数没有任何的输出。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值