当前位置:  开发笔记 > 编程语言 > 正文

Pythonic方式使用范围与排除的最后一个数字?

如何解决《Pythonic方式使用范围与排除的最后一个数字?》经验,为你挑选了1个好方法。

如果我想要一个从0到100的列表,我可以使用五个步骤range(0,105,5),但我也可以使用range(0,101,5).

老实说,这些对我来说都没有意义,因为排除最后一个数字似乎不直观.

除此之外,以5为单位从0到100创建列表的"正确"方法是什么?如果有人有时间,在什么情况下排除最后一个数字使代码更容易阅读?



1> Reti43..:

您列出的两个选项并不相似.一个是range(start, stop+step, step)另一个是range(start, stop+1, step).他们没有必要返回同样的东西.他们唯一的做法是什么时候可stop - start被整除step.

>>> start, stop, step = 0, 42, 5
>>> range(start, stop+step, step)
[0, 5, 10, 15, 20, 25, 30, 35, 40, 45]
>>> range(start, stop+1, step)
[0, 5, 10, 15, 20, 25, 30, 35, 40]

那么,你应该使用哪一个?如果您想要[开始,停止](包括),则使用stop+1范围的结尾.除此之外还有任何stop+1副作用.range(0, 42+5, 5)结果包括45,不在[0,42]范围内.你对这件事有什么感想?

推荐阅读
Life一切安好
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有