Python(十五)生成器
一、自建生成器
import time def myList(n): return [i for i in range (n)] def myGenerator(n): (i for i in range(n)) if __name__ == "__main__": s_time = time.time() myList(100000) e_time = time.time() print("列表存放值的时间是:", (s_time-e_time)) s_time = time.time() myGenerator(100000) e_time = time.time() print("生成器存放值的时间是:", (s_time-e_time)) # 列表存放值的时间是: -0.004987001419067383 # 生成器存放值的时间是: 0.0
所以,生成器的速度较快些
二、生成器yield关键字
def a(): for i in range (1000): yield i x = a() # <generator object a at 0x000002E94A08B308> print(x) # 0 print(next(x)) print("*****************") for i in range(100): print(next(x))
浙公网安备 33010602011771号