我从这里和这里找到答案使用itertools.count:import itertoolsfor i in itertools.count(): if there_is_a_reason_to_break(i): break在Python2中,xrange()仅限于sys.maxint,对于大多数实际目的而言可能已足够:import sysfor i in xrange(sys.maxint): if there_is_a_reason_to_break(i): break在Python3中,range()可以更高,尽管不能达到无穷大:import sysfor i in range(sys.maxsize**10): # you could go even higher if you really want if there_is_a_reason_to_break(i): break因此,最好使用 count()也可以通过更改要迭代的列表来实现此目的,例如:l = [1]for x in l: l.append(x + 1) print(x)