zoukankan      html  css  js  c++  java
  • 学到了林海峰,武沛齐讲的Day18 迭代

    x='hello'
    gxr=iter(x)
    gxr=x.__iter__()
    print(next(gxr)) print(gxr.__next__())

    iter()===__iter__   

    next()===__next__

    感觉就是简化命令而已.,,,将10行的代码,简化后,用2个命令解决,产生了一个新的函数

    def l():
        yield 1
        yield 2
        yield 3
    g=l()
    print(g.__next__())
    print(g.__next__())

    这个有用

    name='alex'
    # name='linhaifeng'
    res='SB' if name == 'alex' else '帅哥'     (res=('SB' (if name == 'alex') else '帅哥'))
    print(res)

    判断   ,将10行的代码,简化后,用2个命令解决,产生了一个新的函数(方法)

    b=(i for i in range(10)) #生成器表达式().处理大数据,不站内存
    a=[i for i in range(10)] #列表[]
    print(a)
    print(b)
    # print(next(a))
    # print(next(a))
    print(next(b))
    print(next(b))
    打印

    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    <generator object <genexpr> at 0x0000019BC0709548>
    0
    1

    另一个,主要解决大批量数据

    print(sum(i for i in range(10) if i > 5 ))
    print(sum([i for i in range(10) if i > 5 ]))
    
    print([i for i in range(10) if i > 5 ])
    print(i for i in range(10) if i > 5 )
    打印

    30   sum计算
    30   sum计算
    [6, 7, 8, 9]   大数据,占内存
    <generator object <genexpr> at 0x000002013F3B9F48>     功能同上,不占内存

    今天太困了...睡觉,明天起早干活

  • 相关阅读:
    Flask莫名其妙特别慢
    MySQL老是提示视图没有主键
    Mysql写入中文出错
    Sqlite向MySql导入数据
    大智慧专业财务PFFIN(N,M)函数N的取值一览表
    js的技巧
    拍拍贷年化收益率的推算
    Sqlite的多表连接更新
    Kali Linux 64位架构安装Veil-Evasion
    修改Kali Linux 2020.1主题颜色
  • 原文地址:https://www.cnblogs.com/gxrwsb/p/11575491.html
Copyright © 2011-2022 走看看