zoukankan      html  css  js  c++  java
  • 生成器进阶

    Send

    首先:send和next工作得起步位置是完全相同得

          Send可以吧一个值作为信号量传递到函数中去

          在生成器执行伊始,只能先用next

          只要要用send传递参数得时候,必须在生成器中还有一个未被返回得yield

     

    列表表达式==列表推导式   #简化你得代码

    Print([i*I for i in [1,3,5]])   #结果必须是一个列表

    生成器表达式  节省内存。简化代码

    Laomuji=(‘egg%d’%i for I in range(10))

        Print(laomuji)

    三种方法从生成器中取值

    1.     A__next__()

    2.     For

    For  I   in  a:

    Print(i)

    3.      List 强转

    Print(list(a))

    集合推导式有自动去重功能

    l=[-1,1,2,3,4,5]
    print([i*i for i in l])
    print({i*i for i in l})

    列表推导式[] – 生成器表达式()

    尽量让推导式简化你得操作,增强代码得可读性

    如果推导式过于复杂了,应该转换成普通得python代码

    所有得列表推导式都可以转换成生成器表达式,并且应该在代码中尽可能多使用生成器表达式而不是列表推导式

  • 相关阅读:
    springmvc
    POJ 3683 Priest John's Busiest Day
    POJ 3678 Katu Puzzle
    HDU 1815 Building roads
    CDOJ UESTC 1220 The Battle of Guandu
    HDU 3715 Go Deeper
    HDU 3622 Bomb Game
    POJ 3207 Ikki's Story IV
    POJ 3648 Wedding
    HDU 1814 Peaceful Commission
  • 原文地址:https://www.cnblogs.com/ez2z/p/7481529.html
Copyright © 2011-2022 走看看