Python3练习题 020 求1+2!+3!+...+20!的和

Posted 点影

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python3练习题 020 求1+2!+3!+...+20!的和相关的知识,希望对你有一定的参考价值。

方法一
import functools
 
sum = 0
for i in range(1,21):
    sum = sum + functools.reduce(lambda x,y: x*y, range(1, i+1))
print(sum)
 
lambda x,y: x*y 的意思是:有一个函数,接受x, y两个参数做乘法。
 
import functools
 方法二
def f(n):
    if n == 1:
        return 1
    else:
        return functools.reduce(lambda x,y: x*y, range(1, n+1)) + f(n-1)
print(f(20))
方法三
def plus(n):
    if n == 1:
        return 1
    else:
        return reduce(lambda x,y: x*y, range(1,n+1)) + plus(n-1)
 
print plus(20)
方法四
sum = 0
x = 1
for i in range(1,21):
    x = x * i
    sum = sum + x
print(sum)

以上是关于Python3练习题 020 求1+2!+3!+...+20!的和的主要内容,如果未能解决你的问题,请参考以下文章

Python3练习题 026:求100以内的素数

Python3练习题 001:4个数字求不重复的3位数

Python3练习题求1000以内所有3和5的倍数的总和

Python练习题 047:Project Euler 020:阶乘结果各数字之和

Python3.6全栈开发实例[020]

Python3练习题求1000以内所有3和5的倍数的总和