python中求階乘的方法

2021-10-25 17:23:21 字數 675 閱讀 1564

1.math.factorial(x)

import math

value = math.factorial(x)

2.reduce函式

reduce()函式接收的引數和 map()類似,乙個函式 f,乙個list,但行為和 map()不同,reduce()傳入的函式 f 必須接收兩個引數,reduce()對list的每個元素反覆呼叫函式f,並返回最終結果值。

def factorial(n):

return reduce(lambda x,y:x*y,[1]+range(1,n+1));

當n=1時,reduce(lambda x,y:x*y,[1]);

n=2時,reduce(lambda x,y:x*y,[1,1]);

n=3時,reduce(lambda x,y:x*y,[1,1,2]);計算1*1*2

n=4時,reduce(lambda x,y:x*y,[1,1,2,3]);計算1*1*2*3

3.遞迴實現

def factorial(n):

if n == 0:

return 1

else:

return n*factorial(n-1)

遞迴方法求n 階乘

遞迴的定義 在定義乙個過程或函式時,出現呼叫本過程或者是本函式的成分,稱之為遞迴。通常需要用到遞迴的方法 定義是遞迴的。例如n fibonacci數列問題 資料結構是遞迴的 單鏈表的資料結構,二叉樹的資料結構 問題的求解方式是遞迴的 漢諾塔問題 用遞迴和非遞迴兩種方式求n 問題 include in...

Python練習題 021 遞迴方法求階乘

python練習題 021 利用遞迴方法求5 首先得弄清楚 5 指的是 5的階乘 即 5 1 2 3 4 5。然後呢,據說,遞迴 就是對自身進行呼叫的函式。聽著挺奇怪,反正先依葫蘆畫瓢,寫 如下 def f x if x 0 return 0 elif x 1 return 1 else retur...

python計算6的階乘 python求n的階乘

階乘是基斯頓 卡曼 christian kramp,1760 1826 於1808年發明的運算符號,是數學術語。乙個正整數的階乘 factorial 是所有小於及等於該數的正整數的積,並且0的階乘為1。自然數n的階乘寫作n 下面我們來看一下使用python計算n的階乘的方法 第一種 利用functo...