优草派  >   Python

Python如何计算数的阶乘?Python中求阶乘的方法

翟嘉慧            来源:优草派

Python中如何求阶乘?Python中要实现求阶乘的方法有很多,这篇给大家介绍四个方法,分别是使用for循环、使用reduce()函数、使用factorial()函数和使用递归调用。文中的示例代码介绍得很详细,有需要的朋友可以参考,接下来就跟随我一起了解看看吧。

Python如何计算数的阶乘?Python中求阶乘的方法

一、python阶乘的方法

第一种:普通的for循环

这是最常见的方法,不管是在遍历的操作还是求阶乘的操作中的,都可以使用for循环,它可以通过循环的方式对输入的数进行判断,举个例子,代码如下:

a = int(input('请输入一个整数:'))
num = 1
if a < 0:
    print('负数没有阶乘!')
elif a == 0:
    print('0的阶乘为1!')
else :
    for i in range(1,a + 1):
        num *= i
    print(num)

第二种:reduce()函数

这个函数是存在functools模块中的,所以我们要调用这个函数之前,需要先导入这个模块,导入时使用的是import语句,举个例子:

from functools import reduce
num = reduce(lambda x,y:x*y,range(1,7))
print(num)

在上面的代码中,还使用了lambda函数,也就是我们说的匿名函数,使用函数进行迭代的操作。

第三种:factorial()函数

factorial()函数存在math模块下,只有在导入math模块之后,才能对这个函数就那些调用,下面看一个简单的实例,代码如下:

import math
value = math.factorial(6)
print(value)

第四种:递归调用

最后一种方式,是进行了递归的调用,通过参数的传递方式,完成阶乘的计算。

def num(n):
    if n == 0:
        return 1
    else:
        return n * num(n - 1)
print(num(6))

以上就是关于Python如何计算数的阶乘?Python中求阶乘的方法的全部内容了,希望大家通过对这篇文章的学习之后,能收获到更多的Python知识。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。