日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python yield 用法

發布時間:2025/5/22 python 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python yield 用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

一、環境

  python 3.6

二、yield 說明

  yield 是一個生成器,可以用于迭代。也是一個類似 return 的關鍵字,迭代一次遇到yield時就返回yield后面(右邊)的值。

重點是:下一次迭代時,從上一次迭代遇到的yield后面的代碼(下一行)開始執行。

三、代碼實戰

# -*- coding: utf-8 -*-## for 循環調用 ## 第一次循環 n = 2, i = 0; yield i*2 = 0 打印 for i = 0 ,停在這個位置 ## 第二次循環 執行下一個語句執行,打印 after i = 0 ; i= 1 滿足循環條件 yield i*=2 ,打印 for i = 2 ## 第三次循環 執行下一個語句執行,打印 after i = 1; i= 2 不滿足循環條件 退出 。打印 othersdef yield_kim(n): # 0 1for i in range(n):yield i*2 # yield就類似 return 返回一個值,并且記住這個返回的位置,下次迭代就從這個位置后開始print("after i=",i)print("<--------------Others-------------->")## for cycle for i in yield_kim(2): print("for i=",i)#第一次輸出 for i = 0 #第二次輸出 after i= 0 ; for i= 2 #第三次輸出 after i= 1 ; <--------------Others-------------->## 普通調用---------------------- def yield_kim2(n):print("n =",n) a = yield n*2print("a = ",a)k = yield_kim2(2) k2 = next(k) # 執行后 yield n*2 表達式的值為 4 ,a 還未賦值#輸出 n = 2 View Code

四、結果截圖

?

轉載于:https://www.cnblogs.com/kimbo/p/9454211.html

總結

以上是生活随笔為你收集整理的Python yield 用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。