详解用python计算阶乘的几种方法


Posted in Python onAugust 14, 2019

第一种:利用functools 工具处理

import functools
result = (lambda k: functools.reduce(int.__mul__, range(1, k + 1), 1))(5)
print(result)

第二种:普通的循环

x = 1
y = int(input("请输入要计算的数:"))
for i in range(1, y + 1):
  x = x * i
print(x)

第三种:利用递归的方式

def func(n):
  if n == 0 or n == 1:
    return 1
  else:
    return (n * func(n - 1))


a = func(5)
print(a)

以上三种方式分别采用了不同的方法,第二种是最容易理解的,第一种是最pythonic的,而第三种则是易用性最高的。第三种直接定义一个阶乘函数,随时都可以调用,从而得到不同值。

希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python时区设置方法与pytz查询时区教程
Nov 27 Python
Python基本数据类型详细介绍
Mar 11 Python
Python序列之list和tuple常用方法以及注意事项
Jan 09 Python
Python3.4编程实现简单抓取爬虫功能示例
Sep 14 Python
机器学习python实战之手写数字识别
Nov 01 Python
python实现识别手写数字 python图像识别算法
Mar 23 Python
python hough变换检测直线的实现方法
Jul 12 Python
python字典的常用方法总结
Jul 31 Python
Django配置MySQL数据库的完整步骤
Sep 07 Python
Django框架反向解析操作详解
Nov 28 Python
手动安装python3.6的操作过程详解
Jan 13 Python
Keras实现支持masking的Flatten层代码
Jun 16 Python
Python使用scrapy爬取阳光热线问政平台过程解析
Aug 14 #Python
用Python抢火车票的简单小程序实现解析
Aug 14 #Python
Python定时任务随机时间执行的实现方法
Aug 14 #Python
查看Python依赖包及其版本号信息的方法
Aug 13 #Python
使用python实现unix2dos和dos2unix命令的例子
Aug 13 #Python
Python编写带选项的命令行程序方法
Aug 13 #Python
使用python模拟命令行终端的示例
Aug 13 #Python
You might like
php入门学习知识点二 PHP简单的分页过程与原理
2011/07/14 PHP
linux系统上支持php的 iconv()函数的方法
2011/10/01 PHP
php创建无限级树型菜单
2015/11/05 PHP
PHP面向对象程序设计__tostring()和__invoke()用法分析
2019/06/12 PHP
laravel5表单唯一验证的实例代码
2019/09/30 PHP
JavaScript 字符编码规则
2009/05/04 Javascript
Jquery 基础学习笔记之文档处理
2009/05/29 Javascript
Jquery Ajax.ashx 高效分页实现代码
2009/10/20 Javascript
js 获取计算后的样式写法及注意事项
2013/02/25 Javascript
JavaScript中消除闭包的一般方法介绍
2015/03/16 Javascript
使用jQuery实现图片遮罩半透明坠落遮挡
2015/03/16 Javascript
js淡入淡出的图片轮播效果代码分享
2015/08/24 Javascript
Webpack实现按需打包Lodash的几种方法详解
2017/05/08 Javascript
深究AngularJS中$sce的使用
2017/06/12 Javascript
解决vue-cli创建项目的loader问题
2018/03/13 Javascript
angularjs1.5 组件内用函数向外传值的实例
2018/09/30 Javascript
使用element-ui的el-menu导航选中后刷新页面保持当前选中状态
2019/07/19 Javascript
Vue组件间数据传递的方式(3种)
2020/07/13 Javascript
9个JavaScript日常开发小技巧
2020/10/06 Javascript
[01:14]DOTA2亚洲邀请赛 ShowOpen
2015/02/07 DOTA
[03:40]DOTA2抗疫特别篇《英雄年代》
2020/02/28 DOTA
[38:39]完美世界DOTA2联赛循环赛 IO vs GXR BO2第二场 11.04
2020/11/05 DOTA
[01:08:30]DOTA2-DPC中国联赛 正赛 Ehome vs Elephant BO3 第一场 2月28日
2021/03/11 DOTA
详解python3实现的web端json通信协议
2016/12/29 Python
Python、PyCharm安装及使用方法(Mac版)详解
2017/04/28 Python
Python爬虫番外篇之Cookie和Session详解
2017/12/27 Python
Python利用heapq实现一个优先级队列的方法
2019/02/03 Python
利用pyshp包给shapefile文件添加字段的实例
2019/12/06 Python
python使用PIL剪切和拼接图片
2020/03/23 Python
PyTorch中Tensor的数据类型和运算的使用
2020/09/03 Python
详解python百行有效代码实现汉诺塔小游戏(简约版)
2020/10/30 Python
EMPHASIS艾斐诗官网:周生生旗下原创精品珠宝品牌
2020/12/17 全球购物
医学实习生自我鉴定
2013/12/12 职场文书
节约每一滴水演讲稿
2014/09/09 职场文书
小学语文教学随笔
2015/08/14 职场文书
SQL Server使用CROSS APPLY与OUTER APPLY实现连接查询
2022/05/25 SQL Server