国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python yield 小結和實例

2019-11-25 18:26:12
字體:
來源:轉載
供稿:網友

一個帶有 yield 的函數就是一個 generator,它和普通函數不同,生成一個 generator 看起來像函數調用,但不會執行任何函數代碼,直到對其調用 next()(在 for 循環中會自動調用 next())才開始執行。雖然執行流程仍按函數的流程執行,但每執行到一個 yield 語句就會中斷,并返回一個迭代值,下次執行時從 yield 的下一個語句繼續執行。看起來就好像一個函數在正常執行的過程中被 yield 中斷了數次,每次中斷都會通過 yield 返回當前的迭代值。

yield 的好處:把一個函數改寫為一個 generator 就獲得了迭代能力,比起用類的實例保存狀態來計算下一個 next() 的值,不僅代碼簡潔,而且執行流程異常清晰。

測試代碼:
 

復制代碼 代碼如下:

#!/usr/bin/env python
#-*- coding:utf8 -*-

def fab(max):
    """斐波那契

主站蜘蛛池模板: 十堰市| 尖扎县| 米林县| 绿春县| 八宿县| 汝南县| 山东省| 珲春市| 通江县| 玛多县| 石门县| 新源县| 同心县| 德清县| 平和县| 乐清市| 安泽县| 辽宁省| 鹿泉市| 封开县| 南康市| 屏东县| 太和县| 九龙坡区| 金寨县| 贵溪市| 阿图什市| 鱼台县| 伊金霍洛旗| 平远县| 平遥县| 宜黄县| 景谷| 子长县| 永修县| 泗阳县| 光山县| 巴楚县| 二连浩特市| 团风县| 平果县|