""" 真实版的Xrange, 并不是一下子生成整个列表list 是你什么时候调用,什么时候产生数据 """ def xrange(n): print("开始执行函数") start = 0 while True: if start >= n: return yield start start += 1 obj = xrange(3) n0 = obj.__next__() n1 = obj.__next__() n2 = obj.__next__() print(n0, n1, n2)
""" 真实版的Xrange, 并不是一下子生成整个列表list 是你什么时候调用,什么时候产生数据 """ def xrange(n): print("开始执行函数") start = 0 while True: if start >= n: return yield start start += 1 obj = xrange(3) n0 = obj.__next__() n1 = obj.__next__() n2 = obj.__next__() print(n0, n1, n2)