Python 传入一个参数n,返回n的阶乘

您所在的位置:网站首页 python输入正整数n求阶乘 Python 传入一个参数n,返回n的阶乘

Python 传入一个参数n,返回n的阶乘

2023-08-25 23:06| 来源: 网络整理| 查看: 265

Python 传入一个参数n,返回n的阶乘

文章目录 Python 传入一个参数n,返回n的阶乘实例题目一、使用简单的循环二、使用lambda 匿名函数

实例题目 写函数,传入一个参数n,返回n的阶乘,例如:cal(7),计算7654321 一、使用简单的循环

使用 for 循环,并定义一个 num=1 的变量,根据这个变量一个一个阶乘

def cal_one(n): if n == 1:return 1 # 如果n是1的话,直接返回1即可,1的阶乘还是1 elif n ==0:return 0 # 同理,直接返回0 num = 1 for i in list(range(1,n+1)): num *= i return num print(cal_one(7)) 二、使用lambda 匿名函数

在使用lambda 的时候得注意,因为lambda 后面定义了两个值 x,y 得用 reduce 函数进行处理才行

在 Python3 中,reduce() 函数已经被从全局名字空间里移除了,它现在被放置在 functools 模块里,如果想要使用它,则需要通过引入 functools 模块来调用 reduce() 函数:

def cal_two(n): from functools import reduce if n == 1:return 1 # 如果n是1的话,直接返回1即可,1的阶乘还是1 elif n ==0:return 0 # 同理,直接返回0 return reduce(lambda x,y:x*y,list(range(1,n+1))) print(cal_two(7))

reduce() 函数会对参数序列中元素进行累积。 函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给 reduce 中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3