Tag:
reduce
| 记录数: 1
-
- PYTHON实现阶乘算法
- Weather:忘了啥了,反正挺舒服
- 2009-04-10
今天看到FoxPro的一道题,要写出P = N!的程序及结果,这不就是个求阶乘吗?
一般程序弄个双循环就可以了,不过PYTHON就比较方便,循环一次就可以了。
def f(n):
c = 1
for i in range(n+1):
c *= i
return c或者是用递归的方法也比较方便。
def f(n):
if n > 1:
return n*f(n-1)
else:
return 1
或
def f(n):
p = 1
if n > 1:
p = n*f(n-1)
return p再后来一想,PYTHON有lambda方法,会不会有更好的方法,于是reduce方法,一句话搞定阶乘。
用PYTHON的reduce方法
def foo(n):
return reduce(lambda x,y: x*y, range(1,n+1)- Views(16974) | Comments(6) | In Python相关