您好,登錄后才能下訂單哦!
本文實例講述了python生成器推導式用法。分享給大家供大家參考,具體如下:
1.生成器推導式是繼列表推導式后的有一中python推導式,他比列表推導式速度更快,占用的內存也更少。
2.使用生成器對象時,可以根據需要將他轉化為列表或者元組,也可以是喲個生成器對像__next__()
方法或內置函數next()
進行遍歷,其具有惰性求值的特點,進行一次遍歷后便不能再次方位內部元素,即訪問一次立馬清空生成器對象
>>> g = ((i+2)**2 for i in range(10)) >>> list(g) [4, 9, 16, 25, 36, 49, 64, 81, 100, 121] >>> list(g) #便利結束后再次訪問時內部元素已經清空 []
>>> g = ((i+2)**2 for i in range(10)) #重新建立一個生成器對象 >>> next(g) 4 >>> next(g) 9 >>> g.__next__() 16 >>> g.__next__() 25 >>> g.__next__() 36 >>> next(g) 49 >>> next(g) 64 >>> next(g) 81 >>> next(g) 100 >>> next(g) #當next的下一個超出生成的范圍時,拋出異常 121 >>> next(g) Traceback (most recent call last): File "<pyshell#41>", line 1, in <module> next(g) StopIteration
更多關于Python相關內容可查看本站專題:《Python列表(list)操作技巧總結》、《Python字符串操作技巧匯總》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設計有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。