在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

從yield開始入門python協程

python爬蟲知識分享 ? 來源:python爬蟲知識分享 ? 作者:python爬蟲知識分享 ? 2022-03-16 16:20 ? 次閱讀

簡單介紹 yield

本篇文章會先向你介紹一個陌生的 Python 關鍵詞,他和 return 就像一對新兄弟,有相似之處,又各有不同。

相似的是:yield 和 return 都可以在一個函數里將值返回給調用方;

不同的是:return 后,函數運行就終止了,而 yield 則只是暫停運行。

關于 yield 的簡單使用,請先看如下例子

>>> def demo():
...     yield 1
...     yield 2
...     yield 3
...
>>> gen = demo()
>>> gen

>>>
>>>
>>> for i in gen:
...     print(i)
...
1
2
3

重點有如下幾個:

含有 yield 的函數,不再是普通的函數,直接調用含有 yield 的函數,返回的是一個生成器對象(generator object)

可以使用 for 循環(實際還可以使用 list 或者 next 函數)來遍歷該生成器對象,將 yield 的內容一個一個打印出來

向生成器中發送消息

函數暫停之后,如果調用者能在下一次恢復函數運行的時候,向它傳遞一些信息,那么整個程序的靈活性會大大提升。

下面通過一個簡明的演示來看看,如何往生成器中發送消息:

def jumping_range(N):
    index = 0
    while index < N:
        # 通過send()發送的信息將賦值給jump
        jump = yield index
        if jump is None:
            jump = 1
        index += jump

if __name__ == '__main__':
    itr = jumping_range(5)
    print(next(itr))
    print(itr.send(2))
    print(next(itr))
    print(itr.send(-1))

輸出。

0
2
3
2

這里解釋下為什么這么輸出。 重點是jump = yield index這個語句。

分成兩部分:

1.yield index 是將index return給外部調用程序。

2.jump = yield 可以接收外部程序通過send()發送的信息,并賦值給jump


審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 信息
    +關注

    關注

    0

    文章

    407

    瀏覽量

    35594
  • 函數
    +關注

    關注

    3

    文章

    4346

    瀏覽量

    62979
  • python
    +關注

    關注

    56

    文章

    4807

    瀏覽量

    85042
收藏 人收藏

    評論

    相關推薦

    適用于MySQL和MariaDB的Python連接器:可靠的MySQL數據連接器和數據庫

    適用于 MySQL 和 MariaDB 的 Python 連接器 Python Connector for MySQL 是一種可靠的連接解決方案,用于 Python 應用程序訪問 M
    的頭像 發表于 01-17 12:18 ?123次閱讀
    適用于MySQL和MariaDB的<b class='flag-5'>Python</b>連接器:可靠的MySQL數據連接器和數據庫

    入門設計讀取數據表開始

    說明文檔,它是每個器件的靈魂所在,提供了關于該器件的所有關鍵信息。通過仔細閱讀數據表,工程師可以了解到器件的工作原理、性能參數、電氣特性、機械尺寸以及應用示例等重要內容。這些信息將幫助我們更好地理解器件的特性和功能,
    的頭像 發表于 12-23 10:40 ?203次閱讀
    <b class='flag-5'>入門</b>設計<b class='flag-5'>從</b>讀取數據表<b class='flag-5'>開始</b>

    Python代理技術詳解:入門到進階

    Python代理技術是一種在網絡編程中廣泛使用的技術,它允許通過代理服務器發送和接收網絡請求。
    的頭像 發表于 11-12 07:06 ?311次閱讀

    TCSH shell 編程入門

    ICer從業人員最先需要掌握的語言,就是linux shell語言。TCSH是ICer使用最多的Shell語言,可以說ICer入門語言TCSH開始
    發表于 11-01 10:45 ?0次下載

    使用TMS320C6416處理器:Turbo處理器(TCP)

    電子發燒友網站提供《使用TMS320C6416處理器:Turbo處理器(TCP).pdf》資料免費下載
    發表于 10-23 10:16 ?0次下載
    使用TMS320C6416<b class='flag-5'>協</b>處理器:Turbo<b class='flag-5'>協</b>處理器(TCP)

    怎么零基礎入門先楫

    先楫適合小白學習嗎,只有一點STM32基礎,網上的資料,好像入門的不多,學習群也不知道在哪里有,買了一塊HPM6E00EVK,現在只能看,無從下手,代碼架構好像也看不太明白,跟HAL庫差別很大,IDE好像也視頻資料不多,難道真的要從開始就放棄了嗎 
    發表于 10-21 13:18

    使用TMS320C6416處理器:Viterbi處理器(VCP)

    電子發燒友網站提供《使用TMS320C6416處理器:Viterbi處理器(VCP).pdf》資料免費下載
    發表于 10-21 09:36 ?0次下載
    使用TMS320C6416<b class='flag-5'>協</b>處理器:Viterbi<b class='flag-5'>協</b>處理器(VCP)

    新書推薦 | TSMaster開發入門到精通

    書名:TSMaster開發入門到精通書號:9787302667193作者:楊金升劉矗劉功申定價:99.80元《CANoe開發入門到精通》作者又一力作!本書旨在幫助廣大汽車工業領域的
    的頭像 發表于 08-30 12:37 ?651次閱讀
    新書推薦 | TSMaster開發<b class='flag-5'>從</b><b class='flag-5'>入門</b>到精通

    重磅!翹首以盼的《TSMaster開發入門到精通》正式出版!

    使用TSMaster軟件,大家翹首以盼的《TSMaster開發入門到精通》書籍于8月正式出版發售!《TSMaster開發入門到精通》由楊金升老師牽頭,同星智能研發和應用支持團
    的頭像 發表于 08-10 08:21 ?561次閱讀
    重磅!翹首以盼的《TSMaster開發<b class='flag-5'>從</b><b class='flag-5'>入門</b>到精通》正式出版!

    Python在AI中的應用實例

    Python在人工智能(AI)領域的應用極為廣泛且深入,基礎的數據處理、模型訓練到高級的應用部署,Python都扮演著至關重要的角色。以下將詳細探討Python在AI中的幾個關鍵應用
    的頭像 發表于 07-19 17:16 ?1367次閱讀

    如何實現Python復制文件操作

    Python 中有許多“開蓋即食”的模塊(比如 os,subprocess 和 shutil)以支持文件 I/O 操作。在這篇文章中,你將會看到一些用 Python 實現文件復制的特殊方法。下面我們開始學習這九種不同的方法來實現
    的頭像 發表于 07-18 14:53 ?479次閱讀

    用pycharm進行python爬蟲的步驟

    提供了許多有用的功能,如代碼自動完成、調試和版本控制等。您可以JetBrains的官方網站下載PyCharm,并根據您的需求選擇免費社區版或付費專業版。 創建一個新的Python項目 打開
    的頭像 發表于 07-11 10:11 ?955次閱讀

    PGX-MINI 4K 入門哪里開始

    20PIN 擴展 IO、數碼管、按鍵、led 燈等硬件資源,為用戶提供基本的開發環境。 上個月打卡應該是有這開發板了,請問入門如里開始
    發表于 04-14 07:02

    [RK3588入門到精通]系列內容專欄目錄及介紹

    [RK3588入門到精通] 專欄目錄及介紹
    的頭像 發表于 04-10 10:40 ?832次閱讀
    [RK3588<b class='flag-5'>從</b><b class='flag-5'>入門</b>到精通]系列內容專欄目錄及介紹

    Python串口讀取數據并以16進制格式展示

    本文凌順實驗室(lingshunlab.com)簡單實現Python讀取串口數據,并且按16進制格式顯示出來。
    的頭像 發表于 03-05 14:25 ?1203次閱讀
    <b class='flag-5'>Python</b>:<b class='flag-5'>從</b>串口讀取數據并以16進制格式展示
    主站蜘蛛池模板: 日本不卡一区二区三区在线观看 | 在线播放免费人成毛片乱码 | 日韩精品免费一级视频 | 六月婷婷色| 黄色日屁 | 欧美成人午夜片一一在线观看 | 男人操女人免费视频 | 亚洲精品色一区色二区色三区 | 欧美日本一区二区三区 | 日本特黄a级高清免费酷网 日本特黄色大片 | 午夜剧场黄 | 成人伊人亚洲人综合网站222 | 成人免费黄色 | 狠狠干天天干 | 黄色网址你懂得 | 大看蕉a在线观看 | 久久精品亚洲青青草原 | 四虎影院在线播放 | 中文字幕色婷婷在线精品中 | 午夜黄色网 | 综合五月天婷婷丁香 | 国产精品综合色区在线观看 | 国产精品视频网站你懂得 | 国产 麻豆 欧美亚洲综合久久 | 色综合免费视频 | 欧美黄色片在线 | 天天草夜夜爽 | 日韩黄色成人 | 天堂种子 | 欧美精品hdvideosex| 欧美黄页网 | 4388x17亚洲最大成人网 | 亚洲美女爱爱 | 天天做天天爱夜夜大爽完整 | 天天射日日射 | 国产精品福利在线观看免费不卡 | 欧美一区二区三区影院 | 四虎精品影院在线观看视频 | 午夜精品在线视频 | 国外一级毛片 | 久久久精品波多野结衣 |