網站首頁 編程語言 正文
計算階乘的兩個函數用法
1.reduce()
#從functools中調用reduce()函數
from functools import reduce
#使用lambda,匿名函數,迭代
num = reduce(lambda x,y:x*y,range(1,n)) ?# 計算n的階乘
print(num)
2.factorial()
import math
value = math.factorial(n) ?# 計算n的階乘
print(value)
計算階乘的5種方法
1.利用循環,如下代碼演示
def main(num):
a=1
for i in range(1,num+1):
a*=i
return a
print(main(10))
執行結果如下:
2.導入functools中的reduce模塊
from functools import reduce
def main(num):
print("方法二:導入functools中的reduce")
return reduce(lambda x,y:x*y,range(1,num+1))
print(main(10))
執行結果如下:
3.導入math庫,使用math庫的factorial方法
import math
def main(num):
return math.factorial(num)
print(main(5))
執行結果如下:
4.使用遞歸函數
def main(num):
def factorial(n):
if n==1:
return 1
else:
return factorial(n-1)*n
return factorial(num)
print(main(5))
執行結果如下:
5.使用eval適配表達式
def main(num):
return eval('*'.join(map(str,range(1,num+1))))
print(main(5))
執行結果如下:
原文鏈接:https://blog.csdn.net/watermelon12138/article/details/102936218
相關推薦
- 2022-06-18 Elasticsearch之倒排索引及索引操作_python
- 2023-01-08 簡化Cocos和Native交互利器詳解_React
- 2022-05-13 Github pages 同步到Gitee pages 并自動更新Gitee pages
- 2022-04-06 python中matplotlib的顏色以及形狀實例詳解_python
- 2022-10-11 pytorch加載自己的數據集源碼分享_python
- 2022-06-02 C++超詳細講解單鏈表的實現_C 語言
- 2022-09-15 Python實現圖形用戶界面計算器_python
- 2022-06-12 go實現grpc四種數據流模式_Golang
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支