有什么好方法可以无限计数?我正在尝试编写一个条件,它将一直持续到数据库中没有值为止,因此它将从 0 迭代到理论上的无穷大(当然是在 try 块内)。
我如何无限地向上计数?还是我应该使用其他东西?
我正在寻找其他语言中类似于 i++ 的东西,它会一直迭代直到失败。
有什么好方法可以无限计数?我正在尝试编写一个条件,它将一直持续到数据库中没有值为止,因此它将从 0 迭代到理论上的无穷大(当然是在 try 块内)。
我如何无限地向上计数?还是我应该使用其他东西?
我正在寻找其他语言中类似于 i++ 的东西,它会一直迭代直到失败。
从文档:
count(start=0, step=1)
--> 计数对象创建一个返回以 . 开头的均匀间隔值的迭代器
n
。相当于:
def count(start=0, step=1):
# count(10) --> 10 11 12 13 14 ...
# count(2.5, 0.5) -> 2.5 3.0 3.5 ...
n = start
while True:
yield n
n += step
例如:
import itertools
for i in itertools.count(13):
print(i)
将生成一个从 13 开始的无限序列,步长为 +1。而且,我以前没有尝试过,但你当然也可以倒计时:
for i in itertools.count(100, -5):
print(i)
从 100 开始,并为每个新值不断减去 5 ....
这比其他用户提供的代码要小一些!
x = 1
while True:
x = x+1
print x
更短一点,使用迭代器并且没有库:
x = 0
for x in iter(lambda: x+1, -1):
print(x)
但它需要当前范围内的变量。