zoukankan      html  css  js  c++  java
  • 函数进阶4

    1.匿名函数:
        一个表达式,没有 return 
        没有名称,执行很小的功能,不可以在内部写条件语句
    2.判断参数是否存在 如果不存在会怎样->给出解决办法
    3.可以使用 filter 和 lambda 进行使用
        如果不进行 list 转换,则只返回 filter 对象
    4.参数:
        位置匹配:
            func(name)
        关键字匹配:
            func(key = value)
                从最右面开始赋予默认值
        收集匹配:
            元组收集
                func(name,arg1,arg2)
                    func(*args)
            字典收集
                 func(name,key1 = value1,key2 = value2)
                     func(**kwargs)
        参数顺序
    5.递归:
        递归就是调用自身
    
    程序:
    # 第一点:
    d = lambda x:x+1 
    print(d(2))
    # 3
    
    d = lambda x:x + 1 if x > 0 else "不大于0"
    print(d(3))
    # 4
    print(d(-3))
    # 不大于0
    
    # 列表推导
    g = lambda x:[(x,i) for i in range(5)] 
    print(g(5))
    # 只传递了一个参数
    # [(5, 0), (5, 1), (5, 2), (5, 3), (5, 4)]
    
    
    # 第三点:
    t = [1,4,7,8,5,3,9]
    g = list(filter(lambda x: x > 5,t))
    # 使用 list 将结果转换为列表
    print(g)
    # [7, 8, 9]
    
    
    # 第四点:
    # 对应位置传递参数
    def func(arg1,arg2,arg3):
        return arg1,arg2,arg3
    
    print(func(1,2,3))
    # (1, 2, 3)
    
    # 关键字匹配,不按照位置进行匹配
    def func(k1 = '',k2 = '',k3 = ''):
        return k1,k2,k3
    
    print(func(k2 = 4 , k3 = 5 , k1 = 3))
    # (3, 4, 5)
    
    
    # 收集匹配
    # 元组
    def func(*args):
        return args
    print(func(5,6,7,8,[1,2,3]))
    # (5, 6, 7, 8, [1, 2, 3])
    
    def func(a,*args):
        # 先匹配 a 后匹配 *args
        return args
    print(func(5,6,7,8,[1,2,3]))
    # (6, 7, 8, [1, 2, 3])
    
    
    # 字典
    def func(**kwargs):
        return kwargs
    print(func(a = 5,b = 8))
    # {'a': 5, 'b': 8}

    2020-04-12

  • 相关阅读:
    hdu 1251(字典树)
    关于sass和less做自适应网页的区别
    重置css样式
    打印网页局部内容的方法
    关于在IE下面promise兼容的解决办法
    关于vue属性绑定的问题
    vue的过渡动画在除了chrome浏览器外的浏览器下不正常的问题
    jq 的replaceWith方法在360下面会出现兼容问题
    element-ui 的 upload组件的clearFiles方法调用方法
    canvas 转化为 img
  • 原文地址:https://www.cnblogs.com/hany-postq473111315/p/12683729.html
Copyright © 2011-2022 走看看