zoukankan      html  css  js  c++  java
  • 12-python基础—python3中的reduce()

    在 Python3 中,reduce() 函数已经被从全局命名空间里移除了,它现在被放置在 functools 模块里,需要通过引入 functools 模块来调用 reduce() 函数:

    from functools import reduce
    • reduce函数会对参数序列中元素进行累加;
    • reduce()传入的函数 f 接收两个参数;
    • reduce函数的定义:
    reduce(function, sequence [, initial] ) -> value
    
    # function参数接收两个参数,reduce依次从sequence中取一个元素,和上一次调用function的结果做参数再次调用function。
    
    # 第一次调用function时,如果提供initial参数,会以sequence中的第一个元素和initial作为参数调用function,否则会以序列sequence中的前两个元素做参数调用function。

    1.无initial参数:求1-100的和

    from functools import reduce
    
    values = reduce(lambda x,y:x+y, range(1,101))
    print(values)
    
    # 5050

    2.有initial参数:求1-100的和,设置initial为100。注意:不书写initial

    1 from functools import reduce
    2 
    3 values = reduce(lambda x,y:x+y, range(1,101), 100)
    4 print(values)
    5 
    6 # 5150
  • 相关阅读:
    VIM文本替换命令
    VIM格式化代码(How to format code with VIM)
    字符串匹配的Boyer-Moore算法
    Java中数组的遍历
    UVa10723
    uva242,Stamps and Envelope Size
    UVa1630,Folding
    uva1629,Cake Slicing,记忆化搜索
    uva 10118,记忆化搜索
    uva10003
  • 原文地址:https://www.cnblogs.com/summer1019/p/11232442.html
Copyright © 2011-2022 走看看