zoukankan      html  css  js  c++  java
  • Python 学习笔记 -- 生成器

    #定义一个生成器,形式与函数相同,区别在于yield关键字,它其实类似于return
    def easyYield():
        yield 1
        yield 2
    
    #将生成器实例化一个对象,绑定在变量身上,通过next取得yield的内容
    a = easyYield()
    print(next(a))
    print(next(a))
    
    
    #第二个实例,升级版的生成器
    def libs():
        a,b=0,1
        while True:
            a,b = b,a+b
            yield a
    
    
    for each in libs():
        if each > 100:
            break
        print(each,end=",")
    print("-----------------------------------------------------")
    
    #列表推导式
    a = [i for i in range(100) if not(i % 2) and i % 3]
    print(a)
    
    #字典推导式
    b = {i:i%2==0 for i in range(10)}
    print(b)
    
    #集合推导式
    c = {i for i in [1,2,1,3,12,4,2,2,4,5,3,5]}
    print(c)
    
    #生成器推导式
    d = (i for i in range(10))
    print(next(d))
    print(next(d))
  • 相关阅读:
    word查找与替换
    细说ASP.NET Windows身份认证
    防钓鱼代码
    sql触发器
    url地址栏参数
    sql递归查询
    认识TWICImage类
    尝试发个贴
    泛型单元
    [学习官方例子]TArray
  • 原文地址:https://www.cnblogs.com/jiangchenxi/p/8253858.html
Copyright © 2011-2022 走看看