• 学到了林海峰,武沛齐讲的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>     功能同上,不占内存

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

  • 相关阅读:
    centos7 yum错误相关
    centos7 jenkins
    vim 常用命令
    Effective STL(第7条)
    【hihoCoder】1049.后序遍历
    C++ 单元测试 Cpputest
    【hihoCoder】1041. 国庆出游
    LeetCode(43. Multiply Strings)
    【LeetCode】16. 4Sum
    【LeetCode】1. Two Sum
  • 原文地址:https://www.cnblogs.com/gxrwsb/p/11575491.html
Copyright © 2020-2023  润新知