3

初级程序员在这里。

有没有办法在 xrange 的范围内使用浮点值以及步长值?我已经看到了一些使用浮点数步进的解决方案,但没有看到实际的边界。

本质上,我想创建一个像这样逐步下降的循环:

for x in xrange(5.5,0,0.1):
     print x

我正在考虑确定我的两个边界之间的差异,将其除以步长值以确定所需的步数,然后将其作为整数值输入到 xrange 函数中 - 但有没有更简单的方法?

谢谢!

4

2 回答 2

7

您可以使用yield. 因为没有内置函数可以做到这一点。

>>> def frange(start, stop, step):
...     x = start
...     while x < stop:
...         yield x
...         x += step

然后在你可以做

>>>for x in frange(5.5,0,0.1):
...    print x
于 2015-02-03T01:29:22.177 回答
2

range需要整数参数。但是你可以这样做:

for x in xrange(55,0,-1): print x*1.0/10

于 2015-02-03T01:28:35.823 回答