python如何計算數的階乘
python計算數的階乘的三種方法:1、使用“for i in range()”迴圈語句求階乘;2、使用“reduce()”函式求階乘;3、透過遞迴求階乘。
方法一:
普通的for迴圈語句:
a = 1 n = 5 for i in range(1,n+1): a = a * i print(a)
得到結果:
120
方法二:
採用上篇博文提到的reduce()函式:
from functools import reduce n = 5 print(reduce(lambda x,y:x*y,range(1,n+1)))
得到結果:
120
方法三:
採用函式的遞迴:
def factorial(n): if n == 0 or n == 1: return 1 else: return (n*factorial(n-1)) a = factorial(5) print(a)
得到結果:
120
需要注意的是,函式的遞迴要有終止機制,否則會一直遞迴下去。如上個程式中給定了if判斷語句來終止迴圈的進行。以上三種方式分別採用了不同的方法,第一種是最容易理解的,第二種是最pythonic的,而第三種則是易用性最高的。第三種直接定義一個階乘函式,隨時都可以呼叫,從而得到不同值。
推薦課程:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1600/viewspace-2832874/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 計算階乘
- 使用Python計算某個數的階乘及列印1!-2!+3!-4!...+50!的結果Python
- Java程式設計:利用while語句計算10的階乘Java程式設計While
- 求任意數字的階乘
- PTA基礎6-8簡單階乘計算
- 階乘質因數分解
- python計算對數值Python
- 請寫一個整數計算器,支援加減乘三種運算和括號。Python版本Python
- python中連乘怎麼算?Python
- JavaScript加減乘數運算JavaScript
- 判斷一個數為哪些數的階乘之和(貪心)
- “東數西算”將釋放算力資源“乘數效應”
- 階乘大全
- 如何用python計算不定積分Python
- 計算位數最高達300位的兩個非負整數的乘積,C語言程式設計實現C語言程式設計
- Python進階如何修改閉包內使用的外部變數?Python變數
- 如何計算FMEA的風險順序數(RPN)
- 計算機計算小數除法的陷阱計算機
- NYOJ 1409 快速計算【矩陣連乘】矩陣
- 如何計算PHP函式中傳遞的引數數量PHP函式
- python 計算兩個列表的相關係數的實現Python
- python 計算list的方差Python
- SQL 如何計算每個分組的中位數SQL
- Scanner的進階使用——基礎計算
- 3.python程式設計與計算機的關係,如何執行python檔案Python程式設計計算機
- NumPy 舍入小數、對數、求和和乘積運算詳解
- 【Python】我是如何使計算時間提速25.6倍的Python
- Python + SeaTable | 計算兩個日期間的工作日天數Python
- Python 函數語言程式設計 – 高階函式Python函數程式設計函式
- Python進階:如何將字串常量轉化為變數?Python字串變數
- Python中如何進行字串計數?Python字串
- 如何使用python計數模組counter?Python
- Shell階段02 shell變數運算(整數運算/小數運算), shell變數案例變數
- Python數學運算Python
- Factorial Trailing Zeroes 階乘後的零AI
- 資料處理02:Python數值計算包NumPyPython
- Python 如何根據給定模型計算權值Python模型
- Python如何根據給定模型計算權值Python模型