zoukankan      html  css  js  c++  java
  • 内置函数02

    内置函数二:

      1. λ匿名函数

        lambda 参数 : 返回值

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

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

          3.返回值和正常函数一样,可以使任意数据类型.

        例如:

          def fang(x):

            return x**2

          ret = fang(5)

          print(ret)

          zrf = lambda x:x**2 # 匿名函数 lambda 参数返回值

          ret = zrf(10)

          print(ret)

    给参数传递两个参数a,b 返回a+b的结果

      a = lambda a,b a+b

      print(a(100,500))

    2. sorted 排序

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

        iterable:可迭代对象

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

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

        例如:

          lst = [1,2,3,4,5]

          lst2= sorted(lst)

          print(lst) # 原列表不会改变

          print(lst2) # 新列表是经过排序的

          和lambda组合使用:

          lst = ['麻花藤','岸本齐史','食品与药品监督局','许仙']

          def func(s):

            return len(s)

          print(sorted(lst,key = lambda s : len(s)))

    3. filter 筛选

        语法: filter(func,iterable)

          流程: 把可迭代对象中的每一个元素拿出来,放到func中运行.返回True/False.根据返回的True和False来决定这个数据是否保留 满足条件的保留 不满足的舍弃

        例如:

          lst = [1,2,3,4,5,6,7]

          l1 = filter(lambda x: x%2 == 0,lst) # 筛选所有的偶数

          print(l1)

    4. map 映射

        语法: map(func, iterable)

          流程:把可迭代对象中的每一个元素拿出来,放到func中运行.返回数据就是结果.

          例如:

            def func(e):

              return e*e

          mp = map(func,[1,2,3,4,5])

          print(list(mp))

        可改写成print(list(map(lambda x : x*x,[1,2,3,4,5])))

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

        lst= [1,2,3,4,5]

        lst2= [1,2,3,4,5]

        print(list(map(lambda x,y:x+y,lst,lst2)))

    5. 递归(难点)

      可以用来遍历各种树形结构,比如文件夹系统 可以使用递归来遍历该文件夹中所有文件.

      特点

        自己调用自己

        递归的出口: return

        递归的循环条件:动

    6.二分法查值:

      前提:可迭代对象有序排列

      核心思想 掐头截尾取中间 查询效率非常高

  • 相关阅读:
    滑动窗口法学习
    209. Minimum Size Subarray Sum
    485. Max Consecutive Ones
    27. Remove Element
    167. Two Sum II
    561. Array Partition I
    344. Reverse String
    14. 最长公共前缀
    layui上传文件时出现 请求上传接口出错
    Linux-5.13将初步支持苹果M1 Soc
  • 原文地址:https://www.cnblogs.com/f-g-f/p/9684102.html
Copyright © 2011-2022 走看看