1、推导方法,只需将列表生成的[]改为()
创建生成器的方法有很多。
In[26]:L=[num*2fornuminrange(5) In[27]:L Out[27]:[0,2,4,6,8] In[28]:G=(num*2fornuminrange(5) In[29]:G Out[29]:<generatorobject<funexpr>At0000001D62EA282>
2、next() 函数
In[30]:next(G) Out[30]:0 In[31]:next(G) Out[31]:2 In[32]:next(G) Out[32]:4 In[33]:next(G) Out[33]:6 In[34]:next(G) Out[34]:8 In[35]:next(G) --------------------------------------------------------------------------- StopIterationTraceback(mostrecentcalllast) <ipython-input-b4d1fcbaf1>in<module> ---->1next(G) StopIteration:
3、for循环和list需要重建G,因为G已经迭代到ipython测试的最后,否则就没有数据了。
In[38]:G=(num*2fornuminrange(5) In[39]:foriinG: ...:print(i) ...: 0 2 4 6 8 In[40]:list(G) Out[40]:[] In[41]:G=(num*2fornuminrange(5) In[42]:list(G) Out[42]:[0,2,4,6,8]
以上就是python生成器创建方法的整理,希望对大家有所帮助。学习更多编程基础知识:python学习网
本文教程操作环境:windows7系统Python 3.9.1,DELL G3电脑。