zoukankan      html  css  js  c++  java
  • [Python]小甲鱼Python视频第021课(函数:lambda表达式)课后题及参考解答

    # -*- coding: utf-8 -*-
    """
    Created on Thu Mar  7 17:53:49 2019
    
    @author: Administrator
    """
    
                                                      
    """
    
    
    
    测试题:
    0. 请使用lambda表达式将下边函数转变为匿名函数?
    
    def fun_A(x, y=3):
            return x * y
    
    
    fun_A = lambda x,y=3 : x*y;
    
    
    
    1. 请将下边的匿名函数转变为普通的屌丝函数?
    
    lambda x : x if x % 2 else None
    
    def fun_1(x):
        
        if x%2:
            return x;
        else:
            return None;
        
    
    2. 感受一下使用匿名函数后给你的编程生活带来的变化?
        a.不用特别为想函数名字而费脑筋了
        
        
    3.你可以利用filter()和lambda表达式快速求出100以内所有3的倍数吗?
    
    
    4. 还记得列表推导式吗?完全可以使用列表推导式代替filter()和lambda组合,你可以做到吗?
    
    
    
    5. 还记得zip吗?使用zip会将两数以元祖的形式绑定在一块,例如:
    >>> list(zip([1, 3, 5, 7, 9], [2, 4, 6, 8, 10]))
    [(1, 2), (3, 4), (5, 6), (7, 8), (9, 10)]
    但如果我希望打包的形式是灵活多变的列表而不是元祖
    (希望是[[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]这种形式),
    你能做到吗?(采用map和lambda表达式)
    
    
    
    
    6. 请目测以下表达式会打印什么?
    
    def make_repeat(n):
            return lambda s : s * n
    
    double = make_repeat(2)
    print(double(8))
    print(double('FishC'))
    
    16
    FishCFishC
    
    """
    
    
    
    #测试题3
    is3x = lambda x :True if x%3 == 0 else False;
    result_list = filter(is3x,range(100));
    print(list(result_list));
    
    #测试题4.
    result_list = [ x for x in range(100) if x%3 == 0 ];
    print(result_list);
    
    
    
    #测试题5.
    collect_func = lambda x,y : [x,y];
    list1 = [ 1, 3, 5, 7, 9  ];
    list2 = [ 2, 4, 6, 8, 10 ];
    
    
    # map(func, *iterables)  iterables可以是多个参数
    listZip = list(map(collect_func,list1,list2));
    print(listZip);
    

      

    ~不再更新,都不让我写公式,博客园太拉胯了
  • 相关阅读:
    Ubuntu 安装Nginx的APT源
    Slots的数值设计与人为干涉
    棋牌游戏的经济系统分析
    kubernetes学习笔记之阿里云游戏业务实战
    Certbot-免费的https证书
    let’s Encrypt 证书之安装故障 Could not bind to IPv4 or IPv6.
    ssh:Permissions 0644 for ‘/root/.ssh/id_rsa’ are too open
    详解nginx websocket配置
    nginx upstream的五种分配方式
    nrm安装与配置
  • 原文地址:https://www.cnblogs.com/alimy/p/10502882.html
Copyright © 2011-2022 走看看