亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中生成器的原理是什么

發布時間:2021-04-26 15:05:01 來源:億速云 閱讀:207 作者:Leah 欄目:編程語言

這篇文章將為大家詳細講解有關python中生成器的原理是什么,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

Python的優點有哪些

1、簡單易用,與C/C++、Java、C# 等傳統語言相比,Python對代碼格式的要求沒有那么嚴格;2、Python屬于開源的,所有人都可以看到源代碼,并且可以被移植在許多平臺上使用;3、Python面向對象,能夠支持面向過程編程,也支持面向對象編程;4、Python是一種解釋性語言,Python寫的程序不需要編譯成二進制代碼,可以直接從源代碼運行程序;5、Python功能強大,擁有的模塊眾多,基本能夠實現所有的常見功能。

1、概念

生成器是通過使用yield語句而不是return語句定義一個普通函數來創建的。如果函數包含至少一個yield語句,它就成為一個生成器函數。yield和return都將從函數返回一些值。函數在執行return時終止,而yield語句暫停函數,保存它的所有狀態,然后在后續調用時繼續執行。

2、組成

至少有一個yield語句。

返回一個對象(迭代器),但不立即開始執行。

記住連續調用之間的局部變量及其狀態。

實現迭代協議。

3、原理分析

下面是使用生成器的類似內容。可以發現,調用__iter__()和__next__()都是由生成器自動處理的:

# Generator for next power of two.
def NextPowTwo(max_ele):
    n = 0
    while n < max_ele:
        yield 2 * n
        n += 1
    raise StopIteration
 
           
obj = NextPowTwo(20)
print (obj.next())
print (obj.next())
print (obj.next())
print (obj.next())

關于python中生成器的原理是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

海宁市| 天水市| 乐至县| 仁怀市| 墨竹工卡县| 江门市| 盐津县| 白河县| 华亭县| 平武县| 开封市| 邳州市| 天气| 新和县| 景泰县| 文山县| 五原县| 彭水| 合山市| 晋中市| 钟祥市| 洮南市| 改则县| 东宁县| 平果县| 舟曲县| 昌平区| 建湖县| 娄底市| 大埔县| 兰州市| 靖边县| 澎湖县| 盐山县| 波密县| 德昌县| 郴州市| 新沂市| 河北省| 吐鲁番市| 永兴县|