zoukankan      html  css  js  c++  java
  • 递归、二分法、匿名函数和部分内置方法

    递归

    定义:

    函数的嵌套调用是:函数嵌套函数。函数的递归调用:它是一种特殊的嵌套调用,但是它在调用一个函数的过程中,又直接或间接地调用了它自身。

    如果递归函数不断地调用函数自身,那么这个递归函数将会进入一个死循环,因此我们应该给递归函数一个明确的结束条件。

    递归必须要有两个明确的阶段:

    1. 递推:一层一层递归调用下去,进入下一层递归的问题规模都将会减小
    2. 回溯:递归必须要有一个明确的结束条件,在满足该条件开始一层一层回溯。

    递归次数

    递归的次数为997 ,但可以用操作设置python运行环境的sys 来获得或者设置递归次数

    import sys
    
    #然后设置相关的递归次数
    
    sys.getrecursionlimit()
    
    sys.setrecursionlimit()

    为什么用递归

    递归的本质就是干重复的活,但是仅仅是普通的重复,我们使用while循环就可以了。递归的循环都是有目的性的

    普通递归例子

     

    二分法列子

     三元二次表达式

    三元表达式固定表达式
        值1 if 条件 else 值2
            条件成立 值1
            条件不成立 值2


    列子:

    
    
    
    

    列表生产式

    意会理解例子

    列表生产式和三元表达式的结合

    字典生产式

     意会列子

    print({i: i**2 for i in range(10)})

    普通2列表转化字典列子:

     

    列表生产表达式注意点:

     

    字典表达式小例子:

    匿名函数 

    没有名字的函数
    匿名函数的特点
    临时存在用完就没了

    匿名函数结构

    # :左边的相当于函数的形参
    # :右边的相当于函数的返回值
    # 匿名函数通常不会单独使用,是配合内置函数一起使用


    意会列子:

    部分内置函数以及与匿名函数的结合

    意会列子~~~~~

    char()

     max()   min()

     

     map()

     zip()

    filter()

     

     sort()

  • 相关阅读:
    设计模式:备忘录模式(Memento)
    设计模式:中介者模式(Mediator)
    设计模式:迭代器模式(Iterator)
    设计模式:解释器模式(Interpreter)
    设计模式:命令模式(Command)
    设计模式:职责链模式(Chain of Responsibility)
    设计模式:单例模式(单例模式)
    win7硬盘安装方法
    sqlite 附加和分离数据库
    Sqlite 复制表结构和数据
  • 原文地址:https://www.cnblogs.com/jinpan/p/11179676.html
Copyright © 2011-2022 走看看