zoukankan      html  css  js  c++  java
  • python基础-递归

    1.递归调用:在一个函数调用的过程中,直接或间接又调用了自身,就是递归调用

    2.递归必备的两个阶段:1.递推  2.回溯

    总结:#总结递归的使用:

              1. 必须有一个明确的结束条件2. 每次进入更深一层递归时,问题规模相比上次递归都应有所减少

              3. 递归效率不高,递归层次过多会导致栈溢出(在计算机中,函数调用是通过栈(stack)这种数据结构

                  实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大

                  小不是无限的,所以,递归调用的次数过多,会导致栈溢出)

    3.匿名函数:fun=lambda x,y,z=1:x+y+z

                      #有名函数与匿名函数的对比

                       有名函数:循环使用,保存了名字,通过名字就可以重复引用函数功能

                      匿名函数:一次性使用,随时随时定义

              应用:max,min,sorted,map,reduce,filter

                     a={'aa':1000000,'bb':9999999,'cc':10111111}

             print(max(a,key=lambda k:a[k]))

             print(min(a,key=lambda k:a[k]))

    4.内置函数:

        enumerate()将值和索引达成元素的迭代器

        eval()将字符串中的代码提取出来,exec也是此功能。只是没有返回值

        pow():pow(2,3,3)#(2**3)%3

        round(num)四舍五入

  • 相关阅读:
    centos 编码问题 编码转换 cd到对应目录 执行 中文解压
    centos 编码问题 编码转换 cd到对应目录 执行 中文解压
    centos 编码问题 编码转换 cd到对应目录 执行 中文解压
    Android MVP 十分钟入门!
    Android MVP 十分钟入门!
    Android MVP 十分钟入门!
    Android MVP 十分钟入门!
    mysql备份及恢复
    mysql备份及恢复
    mysql备份及恢复
  • 原文地址:https://www.cnblogs.com/lixiaoting/p/12027529.html
Copyright © 2011-2022 走看看