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

yipeiwu_com6年前Python基础

第一种:利用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中图像通道分离与合并实例

我就废话不多说了,直接上代码吧! import cv2 img = cv2.imread("1.jpg") b, g, r = cv2.split(img)  #分离函...

pandas去重复行并分类汇总的实现方法

pandas去重复行并分类汇总的实现方法

今天主要记录一下pandas去重复行以及如何分类汇总。以下面的数据帧作为一个例子:  import pandas as pd data=pd.DataFrame({'产品'...

python实现智能语音天气预报

python实现智能语音天气预报

python编写的语音天气预报 本系统主要包括四个函数: 1、获取天气数据 1、输入要查询天气的城市 2、利用urllib模块向中华万年历天气api接口请求天气数据 3、利用gzip解压...

python素数筛选法浅析

python素数筛选法浅析

原理:   素数,指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数。在加密应用中起重要的位置,比如广为人知的RSA算法中,就是基于大整数的因式分解难题,寻找两个超...

python实现支付宝当面付(扫码支付)功能

本文实例为大家分享了python实现支付宝当面付示的具体代码,供大家参考,具体内容如下 一、配置信息准备 登录蚂蚁金服开放平台:https://open.alipay.com/platf...