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的,而第三种则是易用性最高的。第三种直接定义一个阶乘函数,随时都可以调用,从而得到不同值。推荐课程:Python教程

转载自:python学习网 https://www.py.cn/

python判断阶乘和数_python如何计算数的阶乘相关推荐

  1. python判断阶乘和数_[C语言训练]阶乘和数*-题解(Python代码)

    就是按部就班的遍历 最后字典方式排序输出,就是将每一个数字都转换为字符串,然后排序输出 answer_list = [] # 需要一个求阶乘的函数 def func(number): if numbe ...

  2. python判断数字奇偶_python如果快速判断数字奇数偶数

    python如果快速判断数字奇数偶数 这篇文章主要介绍了python如果快速判断数字奇数偶数,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 使用 按 ...

  3. python判断字母数字_Python判断字符串是否为字母或者数字(浮点数)的多种方法

    str为字符串s为字符串 str.isalnum() 所有字符都是数字或者字母 str.isalpha() 所有字符都是字母 str.isdigit() 所有字符都是数字 str.isspace() ...

  4. python判断素数程序_Python程序检查素数

    python判断素数程序 什么是质数? (What is a prime number?) A prime number is a natural number that is greater tha ...

  5. python判断正数负数_python判断正负数方式

    我就废话不多说了,大家还是直接看代码吧! a1 = raw_input("please input a number") a = int(a1) if(a!=0): if(a &g ...

  6. python判断偶数奇数_Python程序检查数字是奇数还是偶数

    python判断偶数奇数 Here you will get python program to check number is odd or even. 在这里,您将获得python程序以检查数字是 ...

  7. python判断汉字个数_python判断列表里数量python中文乱码问题大总结

    在运行这样类似的代码:#!/usr/bin/env python s="中文" print s 最近经常遇到这样的问题: 问题一:SyntaxError: Non-ASCII ch ...

  8. python判断质数程序_python判断质数

    学习python断断续续有两个多星期了.学习了基本的列表.元组.字典等基本数据结构的操作,从现在开始学习一些基本的语法.函数和模块,以及用python实现一些算法. 虽然现在还没有学到很深的地步,但是 ...

  9. python判断回文_Python实现判断一个整数是否为回文数算法示例

    本文实例讲述了Python实现判断一个整数是否为回文数算法.分享给大家供大家参考,具体如下: 第一个思路是先将整数转换为字符串,再将字符串翻转并与原字符串做比较 def isPalindrome(se ...

最新文章

  1. 亲身经历,在实验室不要乱按按钮!!
  2. java 之 语言基础
  3. unigui 导入导出数据
  4. fastDFS分布式文件系统--文件上传/下载/查询完整代码实现
  5. Django Rest framework Request
  6. 性格决定命运--从流浪汉到亿万富翁[taylor]
  7. 晨哥真有料丨恋爱的感觉是什么样子?
  8. 05-IntelliJ IDEA清空项目缓存
  9. c语言 字符型数据如何输入,scanf()函数如何输入字符型数据?
  10. 雷电模拟器 脚本_精灵盛典辅助雷电模拟器使用教程
  11. USACO 2016 January Contest, Gold解题报告
  12. HTML5+CSS3 Pink老师课后作业——小米logo过渡切换的实现
  13. 交换机三种端口模式Access、Hybrid和Trunk
  14. Invalid bound statement (not found): com.wu.dao.BlogMapper.addBook错误
  15. js取绝对值的两种方法
  16. LabVIEW编程规范
  17. Unity3D场景对象无法显示
  18. 深圳企业选择深圳SEO外包的理由
  19. 机器学习中的小数学知识
  20. linux 设置自动退出时间,linux配置超时不操作自动退出登录TMOUT

热门文章

  1. vue3中组件给后代组件传值,provide和inject的使用
  2. 响ASO优化的九大因素
  3. MySQL 数据库管理教程
  4. python图片文本识别的简单实现
  5. Protractor版本大事记
  6. C语言fopen函数的用法,C语言打开文件详解
  7. 编写一个学生类(Students),包括姓名(name)、性别(sex)、学号(num)、语文课(Chinese)、英语课(English)、 //数学课(Math)和平均值(avg),方法包括求
  8. STM32超级简便的按键代码 只需三行 可实现短按+长按
  9. 详解2.5G/5G/10G Base-T以太网接口物理层一致性测试!
  10. 【学习 · 求职必备】学CV必须关注的会议与期刊