我在C中有一个循环:
for (float i = 0; i < 2 * CONST; i += 0.01) {
// ... do something
}
我需要在python中使用相同的循环,但是:
for x in xxx
不一样。
我怎样才能在python中创建它?
答案 0 :(得分:5)
for i in xrange(200*CONST):
i = i/100.0
答案 1 :(得分:5)
你快要上线了。这就是你在列表中的表现: -
your_list = [1, 2, 3]
for eachItem in your_list:
print eachItem
如果您想迭代某个范围: -
for i in xrange(10):
print i
要给出步长值,您可以使用第三个参数,因此在您的情况下,它将是: -
for i in xrange(2 * CONST, 1):
print i
但您只能提供integer
值作为步骤值。
如果您想使用float
增量,则必须稍微修改您的范围: -
for i in xrange(200 * CONST):
print i / 100.0
答案 2 :(得分:4)
编写自己的范围生成器。这有助于您在整个程序中轻松处理非整数步长值,解决同一类型的多个问题。它也更具可读性。
def my_range(start, end, step):
while start <= end:
yield start
start += step
for x in my_range(1, 2 * CONST, 0.01):
#do something
<强> For-loop reference 强>
答案 3 :(得分:3)
numpy
有一个方法可用于创建一系列浮点数。
from numpy import arange
for x in arange(0, 2*CONST, 0.01):
do_something(x)