Python求阶乘
请问一下能不能用lambda的形式写一个递归求阶乘我想把我代码定义函数部分去掉
def jiec(n):
f=2 if n-1==1 else (jiec(n-1)*n if n-1>1 else print('你输入的数字错误'))
return f
jj=int(input('请输入一个大于1的整数:'))
kk=jiec(jj)
if kk!=None:
print(kk,'是',jj-1,'的阶乘')
这应该是不可能的吧,递归需要调用本身,没有函数名的话怎么调用 影-死神 发表于 2018-2-10 15:53
这应该是不可能的吧,递归需要调用本身,没有函数名的话怎么调用
lambda 写的函数可以给上名字吗,有的话是不是可以调用自己了 fatter = lambda x:(x*fatter(x-1))if x > 1 else 1 °蓝鲤歌蓝 发表于 2018-2-10 15:58
fatter = lambda x:(x*fatter(x-1))if x > 1 else 1
厉害了 waitforlove 发表于 2018-2-10 16:05
厉害了
没有没有 waitforlove 发表于 2018-2-10 16:05
厉害了
fatter=lambda n:2 if n-1==1 else (fatter(n-1)*n if n-1>1 else print('你输入的数字错误'))
jj=int(input('请输入一个大于1的整数:'))
kk=fatter(jj)
if kk!=None:
print(kk,'是',jj-1,'的阶乘')
厉害没毛病{:10_254:}
页:
[1]