最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Python生成器傳參數(shù)及返回值的詳細解析-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務(wù)器提供商,新人活動買多久送多久,劃算不套路!

鹽山網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,鹽山網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為鹽山1000+提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的鹽山做網(wǎng)站的公司定做!

這篇文章主要講解了Python生成器傳參數(shù)及返回值的詳細解析,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。

一.生成器簡介

在python中,帶yield的方法不再是普通方法,而是生成器,它的執(zhí)行順序不同與普通方法.

普通方法的執(zhí)行是從頭到尾,最后return返回,或者沒有返回值

生成器是到y(tǒng)ield就返回yield之后的值,然后阻塞,等待next()/send()繼續(xù)調(diào)起生成器

二.next()/send()的異同:

next()/send()都可以調(diào)起生成器

next()只能調(diào)起生成器返回值,send()還可以對生成器進行傳參數(shù),與正常的理解不同,yield表達式左側(cè)的值是send()方法傳進來的參數(shù)

還有一個有意思的點,第一次send()的時候要求只能send(None)

三.生成器的執(zhí)行順序

在yield這一行代碼的執(zhí)行邏輯是這樣的,等號右邊的yield r先執(zhí)行,將r返回,阻塞...

等到下次生成器再被調(diào)起的時候,yield把傳入的參數(shù)給n,再繼續(xù)執(zhí)行下面的代碼,知道yield繼續(xù)返回...

def consumer(): 
  r = '' 
  while True: 
    n = yield r 
    if not n: 
      return 
    print('[CONSUMER] Consuming %s...' % n) 
    r = '200 OK' 
 
def produce(c): 
  c.send(None) 
  n = 0 
  while n < 5: 
    n = n + 1 
    print('[PRODUCER] Producing %s...' % n) 
    r = c.send(n) 
    print('[PRODUCER] Consumer return: %s' % r) 
  c.close() 
                                                            

In [31]: c=consumer()                                                      

In [32]: c.send(None)                                                      
Out[32]: ''

In [33]: c.send(1)                                                       
[CONSUMER] Consuming 1...
Out[33]: '200 OK'

In [34]: c.send(2)                                                       
[CONSUMER] Consuming 2...
Out[34]: '200 OK'

本文名稱:Python生成器傳參數(shù)及返回值的詳細解析-創(chuàng)新互聯(lián)
本文URL:http://fisionsoft.com.cn/article/dsehjd.html