python中yield的使用注意
(推薦操作系統:windows7系統、Python3.9.1、DELLG3電腦。)
1、說明
一旦在函數中使用了yield,它就變成了生成函數。但yield不能和return共存,并且yield只能定義在函數中。當我們調用這個函數時,函數內部的代碼不會立即執行,所以函數只是返回一個生成器對象。當我們用for迭代它時,函數中的代碼將被執行。
2、實例
python3新增了yieldfrom語法,它相當于for+yield。比如:
yieldfroma()
#等同于下面
foriina():
yieldi
拓展:yield和return的區別:
return的時候這個函數的局部變量都被銷毀了;
所有return是得到所有結果之后的返回;
yield是產生了一個可以恢復的函數(生成器),恢復了局部變量;
生成器只有在調用.next()時才運行函數生成一個結果。
以上就是python中yield的使用注意,希望能對大家有所幫助。更多Python學習教程請關注IT培訓機構:千鋒教育。