广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python 阶乘详解
  • 499
分享到

Python 阶乘详解

2024-04-02 19:04:59 499人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

相信大家对阶乘都不陌生。不知道阶乘的可以看这里: 一个数的阶乘: 比如5的阶乘 在python中大部分教程一般推荐用递归函数完成: #!/usr/bin/python3

相信大家对阶乘都不陌生。不知道阶乘的可以看这里:

一个数的阶乘:

在这里插入图片描述

比如5的阶乘

在这里插入图片描述

python中大部分教程一般推荐用递归函数完成:


#!/usr/bin/python3
"""Python2,3都可以"""
def factorial(n):#主体函数
    if n == 1:
        return 1
    return n * factorial(n-1)
res = input("请输入n:")
print(factorial(res))

但是这样不仅阅读不方便,还有可能在n非常大时造成栈溢出的情况。


>>> factorial(1000)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<stdin>", line 4, in factorial
  File "<stdin>", line 4, in factorial
  File "<stdin>", line 4, in factorial
  [Previous line repeated 995 more times]
  File "<stdin>", line 2, in factorial
RecursionError: maximum recursion depth exceeded in comparison

所以我更倾向于这个:


#!/usr/bin/python
li = []
def factorial(n):
    global li
    result = 1
    for i in range(n):
        li.append(i+1)
    for j in li:
        result = result * j
    return result
print(factorial(int(input("请输入n:"))))

通过单一列表存储,可以有效减少内存使用,并且这个调用只占用几个栈,不会造成溢出。

或者math模块中也有函数可以使用:


import math
a = input("N:")
fac = math.factorial(a)
print(fac)

要么就是非常简单的for:


#中文变量名是合法的!
#中文变量名是合法的!!
#中文变量名是合法的!!!
数 = input("数:")
a = 1
for i in range(1,数+1):
    a = a * i
print(a)

非常容易理解~

参考:https://docs.python.org/3

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!

--结束END--

本文标题: Python 阶乘详解

本文链接: https://www.lsjlt.com/news/137381.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python 阶乘详解
    相信大家对阶乘都不陌生。不知道阶乘的可以看这里: 一个数的阶乘: 比如5的阶乘 在python中大部分教程一般推荐用递归函数完成: #!/usr/bin/python3 ...
    99+
    2022-11-12
  • 详解Python如何巧妙实现数学阶乘n!
    目录python实现阶乘-基础版本方式1-累乘方式2-使用递归函数方式3-第三方库functools的reduce函数python实现阶乘累加求和-进阶版方式1-累乘+sum方式2-...
    99+
    2023-03-19
    Python计算数学阶乘n! Python数学阶乘n! Python阶乘
  • C语言实现阶乘的示例详解
    目录前言1.阶乘实现1.1理论步骤1.2实践结果2.连续乘层相加实现2.1理论步骤2.2实践结果前言 在现实中,我们做数学题总会遇到阶乘问题,这在计算机中也不例外。 那我们应该怎么实...
    99+
    2022-11-13
  • python 如何求N的阶乘
    目录求N的阶乘实现阶乘的三种解法解法一:循环解法二:递归解法三:数组①i=1②i=2③i=3④i=4⑤i=5求N的阶乘 本题要求编写程序,计算N的阶乘。 输入格式: 输入在一行中给出...
    99+
    2022-11-11
  • python怎么求N的阶乘
    今天小编给大家分享一下python怎么求N的阶乘的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。求N的阶乘本题要求编写程序,计...
    99+
    2023-06-30
  • python小代码之阶乘求和
    需求:阶乘:也是数学里的一种术语;阶乘指从1乘以2乘以3乘以4一直乘到所要求的数;在表达阶乘时,就使用“!”来表示。如h阶乘,就表示为h!;阶乘一般很难计算,因为积都很大。提问:求1+2!+3!+...+20!的和实现环境:python3编...
    99+
    2023-01-31
    阶乘 代码 python
  • python中阶乘的表示方法
    小编给大家分享一下python中阶乘的表示方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!python中阶乘的表示方法:首先用def代码创建函数,并创建一个变量res;然后写入for range循环,并在for循环当中进...
    99+
    2023-06-07
  • python计算数的阶乘的方法
    方法:1、使用循环;2、使用递归;3、使用math模块;4、使用reduce函数。阶乘是一个非常常见的数学概念,指的是一个正整数 n 的阶乘是所有小于等于 n 的正整数的乘积。阶乘通常用符号 n! 来表示,其中 n 是一个正整数。计算阶乘是...
    99+
    2023-11-13
    python 阶乘
  • Python怎么实现数学阶乘n!
    这篇文章主要介绍了Python怎么实现数学阶乘n!的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python怎么实现数学阶乘n!文章都会有所收获,下面我们一起来看看吧。python实现阶乘-基础版本什么是阶乘呢...
    99+
    2023-07-05
  • python算阶乘的方法有哪些
    在Python中,可以使用以下几种方法来计算阶乘:1. 使用循环:可以使用for循环或while循环来计算阶乘。例如:```pyth...
    99+
    2023-08-09
    python
  • python怎么求出输入数的阶乘
    这篇文章主要介绍了python怎么求出输入数的阶乘,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。python求出输入数阶乘的方法:首先定义一个【factorial()】函数,...
    99+
    2023-06-08
  • 如何在Python 中计算N的阶乘
    本篇文章为大家展示了如何在Python 中计算N的阶乘,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1)使用循环计算阶乘def frac(n):  r =&n...
    99+
    2023-06-09
  • Python进阶之协程详解
    目录协程协程的应用场景抢占式调度的缺点用户态协同调度的优势协程的运行原理Python 中的协程总结协程 协程(co-routine,又称微线程)是一种多方协同的工作方式。当前执行者在...
    99+
    2022-11-13
  • python计算阶乘的两个函数用法
    目录计算阶乘的两个函数用法1.reduce()2.factorial()计算阶乘的5种方法1.利用循环,如下代码演示2.导入functools中的reduce模块3.导入math库,...
    99+
    2022-11-11
  • Python真题案例之小学算术 阶乘精确值 孪生素数 6174问题详解
    目录前言小学生算术问题描述问题分析代码实现阶乘精确值问题描述问题分析代码实现孪生素数问题描述问题分析代码实现6174问题问题描述问题分析代码实现前言 今天给大家分享一下刷到的关于数值...
    99+
    2022-11-13
  • python计算阶乘的两个函数怎么用
    本篇内容主要讲解“python计算阶乘的两个函数怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python计算阶乘的两个函数怎么用”吧!计算阶乘的两个函数用法1.reduce()#从fun...
    99+
    2023-06-30
  • 怎么使用python递归算法求n的阶乘
    你可以使用下面的代码来使用递归算法求n的阶乘:```pythondef factorial(n):if n == 0 or n ==...
    99+
    2023-08-09
    python
  • python中怎么使用递归法求n的阶乘
    在Python中,可以使用递归方法来计算n的阶乘。递归是指函数调用自身的过程。下面是一个使用递归法计算n的阶乘的示例代码:```py...
    99+
    2023-09-15
    python
  • Python 怎么定义计算N的阶乘的函数
    定义计算N的阶乘的函数 1)使用循环计算阶乘 def frac(n): r = 1 if n<=1: if n==0 or n==1: retu...
    99+
    2022-11-11
  • python怎么计算数字或者数组的阶乘
    这篇文章主要介绍“python怎么计算数字或者数组的阶乘”,在日常操作中,相信很多人在python怎么计算数字或者数组的阶乘问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python怎么计算数字或者数组的阶乘...
    99+
    2023-06-20
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作