详解用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编写生成验证码的脚本的教程
May 04 Python
为Python的Tornado框架配置使用Jinja2模板引擎的方法
Jun 30 Python
Python增量循环删除MySQL表数据的方法
Sep 23 Python
Django框架模板文件使用及模板文件加载顺序分析
May 23 Python
基于python实现自动化办公学习笔记(CSV、word、Excel、PPT)
Aug 06 Python
python滑块验证码的破解实现
Nov 10 Python
python中68个内置函数的总结与介绍
Feb 24 Python
如何基于线程池提升request模块效率
Apr 18 Python
Python实现捕获异常发生的文件和具体行数
Apr 25 Python
Python爬虫自动化爬取b站实时弹幕实例方法
Jan 26 Python
numpy数据类型dtype转换实现
Apr 24 Python
pyqt5蒙版遮罩mask,setmask的使用
Jun 11 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
建立文件交换功能的脚本(二)
2006/10/09 PHP
php入门学习知识点五 关于php数组的几个基本操作
2011/07/14 PHP
关于url地址传参数时字符串有回车造成页面脚本赋值失败的解决方法
2013/06/28 PHP
php jq jquery getJSON跨域提交数据完整版
2013/09/13 PHP
Nginx服务器上安装并配置PHPMyAdmin的教程
2015/08/18 PHP
详解php中 === 的使用
2016/10/24 PHP
搭建自己的PHP MVC框架详解
2017/08/16 PHP
使用PHP连接数据库_实现用户数据的增删改查的整体操作示例
2017/09/01 PHP
用php实现分页效果的示例代码
2020/12/10 PHP
保证JavaScript和Asp、Php等后端程序间传值编码统一
2009/04/17 Javascript
IE不支持getElementsByClassName最终完美解决方案
2012/12/17 Javascript
jQuery中:empty选择器用法实例
2014/12/30 Javascript
JS实现具备延时功能的滑动门菜单效果
2015/09/17 Javascript
js 实现数值的千分位及保存小数方法(推荐)
2016/08/01 Javascript
vue+axios实现登录拦截的实例代码
2017/05/22 Javascript
解决React Native端口号修改的方法
2017/07/28 Javascript
微信小程序 input表单与redio及下拉列表的使用实例
2017/09/20 Javascript
javascript基于牛顿迭代法实现求浮点数的平方根【递归原理】
2017/09/28 Javascript
JS无限级导航菜单实现方法
2019/01/05 Javascript
bootstrap-treeview实现多级树形菜单 后台JSON格式如何组织?
2019/07/26 Javascript
微信小程序canvas开发水果老虎机的思路详解
2020/02/07 Javascript
Js生成随机数/随机字符串的方法小结【5种方法】
2020/05/27 Javascript
JavaScript冒泡算法原理与实现方法深入理解
2020/06/04 Javascript
在nuxt中使用路由重定向的实例
2020/11/06 Javascript
pyqt4教程之messagebox使用示例分享
2014/03/07 Python
python字典DICT类型合并详解
2017/08/17 Python
Python方法的延迟加载的示例代码
2017/12/18 Python
python实现计算器功能
2019/10/31 Python
python中栈的原理及实现方法示例
2019/11/27 Python
pytorch 模拟关系拟合——回归实例
2020/01/14 Python
Python通过类的组合模拟街道红绿灯
2020/09/16 Python
精选干货:Java精选笔试题附答案
2014/01/18 面试题
幼儿园户外活动总结
2014/07/04 职场文书
公司委托书格式范文
2014/10/09 职场文书
食堂卫生管理制度
2015/08/04 职场文书
关于React Native使用axios进行网络请求的方法
2021/08/02 Javascript