zoukankan      html  css  js  c++  java
  • pyhon的yileld的一点笔记

    yield感觉很神秘,感觉也不好理解,学习pyhon最后终归是要学习这个东西,研究了一段时间,把自己的笔记写下来

    说简单点就是遇到yield就停止往下执行代码,也包括不执行yield这条语句,然后返回结果后,继续从yield这条语句开始执行,这里也包括执行了yield这条语句,真正的执行了,上面的返回只是单纯的跳出执行,返回没有执行yield,然后再遇到yield再返回,然后再回来执行,如此往复

    import time
    def f():
        print("OK1")
        time.sleep(3)
        count = yield 5
        print("aaa")
    
        print(count)
        print("ok2")
        yield 67
    
    c = f()
    next(c)
    #c.send(999)

    执行结果如下

    D:pythonvenvScriptspython.exe D:/python/xiecheng2.py
    OK1

    Process finished with exit code 0

    import time
    def f():
        print("OK1")
        time.sleep(3)
        count = yield 5
        print("aaa")
    
        print(count)
        print("ok2")
        yield 67
    
    c = f()
    next(c)
    c.send(999)

    执行结果如下

    D:pythonvenvScriptspython.exe D:/python/xiecheng2.py
    OK1
    aaa
    999
    ok2

    Process finished with exit code 0

    可见count变成了999

  • 相关阅读:
    标识符和关键字
    大任务拆成小任务,再到可并行的小任务
    莫等闲
    这样修改有哪些优缺点 wcf service via attribute setting vs config
    头脑发达,四肢简单
    32位还是64位
    session未释放
    split task
    sqlserver deadlock
    IronPython
  • 原文地址:https://www.cnblogs.com/hh2737/p/9930661.html
Copyright © 2011-2022 走看看