• Python之functools.reduce使用


    from functools import reduce

    1.整数的累积:列表里面整数累加

    a=[1,3,5]
    b=reduce(lambda x,y:x+y,a)
    print('1.列表里面整数累加==:',b)
    1.列表里面整数累加==: 9
    1
    2
    3
    4
    2.列表的累加:列表里面的列表相加

    a=[[1,3,5],[6]]
    b=reduce(lambda x,y:x+y,a)
    print('2.列表里面的列表相加—:',b)
    2.列表里面的列表相加—: [1, 3, 5, 6]

    a=[[["abc","123"],["def","456"],["ghi","789"]]]
    b=reduce(lambda x,y:x+y , a )
    print('列表里面的列表相加—:',b)
    列表里面的列表相加—: [['abc', '123'], ['def', '456'], ['ghi', '789']]
    1
    2
    3
    4
    5
    6
    7
    8
    9
    3.元组的累加:列表里面的元组相加

    a=[("abc","123"),("def","456"),("ghi","789")]
    b=reduce(lambda x,y:x+y , a )
    print('3.列表里面的元组相加!!',b)
    3.列表里面的元组相加!! ('abc', '123', 'def', '456', 'ghi', '789')
    1
    2
    3
    4
    4.字符串的累加

    a=['abc','def','hij']
    b=reduce(lambda x,y:x+y,a)
    print('4.列表里面字符串的累加:~~',b)
    4.列表里面字符串的累加:~~ abcdefhij

    a=('abc','def','hij')
    b=reduce(lambda x,y:x+y,a)
    print('元祖里面字符串的累加:~~',b)
    元祖里面字符串的累加:~~ abcdefhij

    a=[['abc','def','hij']]
    b=reduce(lambda x,y:x+y,a)
    print('嵌套列表里面字符串的累加:~~',b)
    嵌套列表里面字符串的累加:~~ ['abc', 'def', 'hij']
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    #总结:
    #1.functools函数;reduce分解;lambda 匿名函数;x,y:x+y 表达式
    #2.使用functools.reduce,要是整数就累加;
    #3.使用functools.reduce,要是字符串、列表、元祖就拼接(相当脱了一层外套)
    ---------------------

  • 相关阅读:
    个人对回调函数的理解(personal understanding of callback function)
    蓄水池抽样及实现
    一些我做的软件
    poj1063 解题报告(poj 1063 analysis report)
    有关MAP、ML和EM的个人理解
    2012年总结
    asp.net中requiredfieldvalidator很纠结的问题(有关ClientScript属性)
    wcf在iis6上的部署
    GridView后台代码动态显示隐藏ItemTemplate
    aspx向silverlight传值
  • 原文地址:https://www.cnblogs.com/hyhy904/p/11198590.html
Copyright © 2020-2023  润新知