zoukankan      html  css  js  c++  java
  • map,filter,reduce运用

    #author:徐征
        #=====================作业一
    #用map来处理字符串列表啊,把列表中所有人都变成sb,比方lin_sb
    name=['lin','hai','feng']
    m=map(lambda name:name+"_NB",name)
    print(list(m))
    '''['lin_NB', 'hai_NB', 'feng_NB']'''
    #用map来处理下述l,然后用list得到一个新的列表,列表中每个人的名字都是sb结尾
    l=[{'name':'egon'},{'name':'d'}]
    print(list(map(lambda name:name["name"]+"_NB", l)))
    '''['egon_NB', 'd_NB']'''
    #=====================作业二
    #用filter来处理,得到股票价格大于20的股票名字
    shares={
        'IBM':36.6,
        'Lenovo':23.2,
        'oldboy':21.2,
        'ocean':10.2,
    }
    f=filter(lambda price:shares[price]>20,shares)
    for i in f:
        print(i)
    ''' IBM
        Lenovo
        oldboy
    '''
    
    # =====================作业三
    #如下,每个小字典的name对应股票名字,shares对应多少股,price对应股票的价格
    portfolio = [
        {'name': 'IBM', 'shares': 100, 'price': 91.1},
        {'name': 'AAPL', 'shares': 50, 'price': 543.22},
        {'name': 'FB', 'shares': 200, 'price': 21.09},
        {'name': 'HPQ', 'shares': 35, 'price': 31.75},
        {'name': 'YHOO', 'shares': 45, 'price': 16.35},
        {'name': 'ACME', 'shares': 75, 'price': 115.65}
    ]
    #1:map来得出一个包含数字的迭代器,数字指的是:购买每支股票的总价格
    z=map(lambda total_prices:{total_prices["name"]:total_prices["shares"]*total_prices["price"]},portfolio)
    for i in z:
        print(i)
    ''' {'IBM': 9110.0}
        {'AAPL': 27161.0}
        {'FB': 4218.0}
        {'HPQ': 1111.25}
        {'YHOO': 735.7500000000001}
        {'ACME': 8673.75}
    '''
    #2:基于1的结果,用reduce来计算,购买这些股票总共花了多少钱
    from functools import reduce
    z=map(lambda total_price:total_price["shares"]*total_price["price"],portfolio)
    print(reduce(lambda x,y:x+y,z))
    '''51009.75'''
    #3:用filter过滤出,单价大于100的股票有哪些
    f=filter(lambda price:price["price"] > 100,portfolio)
    for i in f:
        print(i)
    ''' {'name': 'AAPL', 'shares': 50, 'price': 543.22}
        {'name': 'ACME', 'shares': 75, 'price': 115.65}
    '''
  • 相关阅读:
    【转载】浏览器兼容性测试
    【转载】移动端
    【转载】Postman学习之【压力测试】
    【转载】如何进行bug总结
    【转载】按键精灵对安卓APP进行自动化界面点击测试
    【转载】Selenium+Python自动化测试环境搭建和搭建过程遇到的问题解决
    【转载】fiddler软件测试——Fiddler抓取https设置详解(图文)
    【转载】服务器性能测试工具 ---- nmon
    python中的一些好用的库
    python操作excel表格相关的库
  • 原文地址:https://www.cnblogs.com/xuzheng940806/p/6705766.html
Copyright © 2011-2022 走看看