简单的方法来无限计数

Cec*_*uez 6 python

什么是无限计数的好方法?我正在尝试编写一个将继续运行的条件,直到数据库中没有值,因此它将从0迭代到理论上的无穷大(当然在try块内).

我怎么会无限向上数?或者我应该使用其他东西?

我正在寻找类似于其他语言的i ++的东西,它一直在迭代直到失败.

Lev*_*von 20

看看itertools.count().

来自文档:

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
Run Code Online (Sandbox Code Playgroud)

例如:

import itertools

for i in itertools.count(13):
   print(i)
Run Code Online (Sandbox Code Playgroud)

会产生一个以13开始的无限序列,步长为+1.而且,我之前没有尝试过,但你当然可以倒数:

for i in itertools.count(100, -5):
    print(i)
Run Code Online (Sandbox Code Playgroud)

从100开始,并为每个新值减去5 ....