91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

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

浦东新区| 卓资县| 北京市| 沅江市| 广汉市| 永和县| 稷山县| 泊头市| 观塘区| 新宁县| 阜平县| 叙永县| 长白| 鄄城县| 华阴市| 会同县| 黄大仙区| 凤凰县| 囊谦县| 阳高县| 鄢陵县| 平昌县| 堆龙德庆县| 阿瓦提县| 姚安县| 高清| 玛纳斯县| 辽宁省| 铜山县| 兰西县| 五台县| 无极县| 屯门区| 娄底市| 五常市| 平遥县| 三河市| 千阳县| 东辽县| 镇巴县| 泰兴市|