zoukankan      html  css  js  c++  java
  • 迭代 复习

    如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration)。

    默认情况下,dict迭代的是key。如果要迭代value,可以用for value in d.values(),如果要同时迭代key和value,可以用for k, v in d.items()

    由于字符串也是可迭代对象,因此,也可以作用于for循环

    凡是可作用于for循环的对象都是Iterable类型;迭代对象

    凡是可作用于next()函数的对象都是Iterator类型,它们表示一个惰性计算的序列; 迭代器

    集合数据类型如listdictstr等是Iterable但不是Iterator,不过可以通过iter()函数获得一个Iterator对象。

    杨辉三角定义如下:

              1
             / 
            1   1
           /  / 
          1   2   1
         /  /  / 
        1   3   3   1
       /  /  /  / 
      1   4   6   4   1
     /  /  /  /  / 
    1   5   10  10  5   1
    

    把每一行看做一个list,试写一个generator,不断输出下一行的list

    # -*- coding: utf-8 -*-
    
    def triangles():

      N = [1]
      while True:
        yield N
        N.append(0)
        N = [N[i-1] + N[i] for i in range(len(N))]



  • 相关阅读:
    jvm内存分部
    vue 浏览器滚动行为
    vue中vueRouter使用
    vue脚手架的安装和使用
    vue 在路由中复用组件
    单例模式
    ser2net使用
    怎样使用万用表来测试板子上的TX和RX引脚
    STM32W芯片的JTAG口用于GPIO
    openwrt构建过程探索
  • 原文地址:https://www.cnblogs.com/009NotFound/p/10465987.html
Copyright © 2011-2022 走看看