zoukankan      html  css  js  c++  java
  • 匿名函数和递归

    lambda

    匿名函数: 为了解决一些简单的需求而设计的一句话函数

    lambda函数不需要def来声明,一句话就可以声明出一个函数

    语法:

    函数名 = lambda 参数: 返回值

    需要注意的是:

      1. 函数的参数可以有多个,多个参数之间用逗号隔开

      2. 匿名函数不管多复杂,只能写一行,切逻辑结束后直接返回数据

      2.返回值和正常的函数一样,可以是任意数据类型

    匿名函数并不是说一定没有名字,这里前面的变量就是一个函数名,说他是匿名   原因是我们通过__name__查看的时候是没有名字的,统一叫lambda,在调用的是时候没有什么特别之处, 像正常的函数调用即可.

    sorted()

    排序函数

    语法: sorted(iterable, key = None, reverse = False)

    iterable: 可迭代对象

    key:排序规则(排序函数) ,在sorted内部会将可迭代对象中的每一个元素传递给这个函数的参数.根据函数运算的结果进行排序

    reverse : 是否是倒叙.True:倒叙, False: 正序

     

    和函数的组合使用

    和lambda组合使用

    filter()

    筛选函数:

    语法: filter(function. iterable)

      function: 用来筛选的函数, 在filter中会自动的吧iterable中的元素传递给function,然后根据function返回True或者False 来判断是否保留此项数据

      iterable: 可迭代对象

     

    map()

    映射函数:

    语法: map(function,iterable)可以对可迭代对象中的每一个元素进行映射,分别取执行function

    计算列表中每个元素的平方,返回新列表

    改写成lambda

    计算两个列表中相同位置的数据的和

     递归:

    在函数中调用函数本身,就是递归

    python机制:递归的最大深度是998

    递归的应用:

    我们可以使用递归来遍历各种树形结构,比我我们的文件夹系统,可以使用递归来遍历改文件夹中的所有文件

    二分查找

    二分查找.每次能够排除掉一半的数据,查找的效率非常高,但是局限性比较大,必须是有序序列才可可以使用二分查找

    要求: 必须是有序序列

  • 相关阅读:
    C# ToString格式大全
    如何将数据库中的表导入到PowerDesigner中
    IIS配置wap服务器
    URL加随机数的作用
    程序员人生路
    Asp.net三种事务处理
    20121107荣迪信息技术有限公司面试总结
    ubuntu 安装之后的问题
    windows系统+VS2013编译GDAL(使用cmd命令行)
    VS2013+OPENCV+GDAL处理多光谱数据
  • 原文地址:https://www.cnblogs.com/ALADL/p/9341192.html
Copyright © 2011-2022 走看看