首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >递归的lambda表达式可能吗?

递归的lambda表达式可能吗?
EN

Stack Overflow用户
提问于 2009-07-29 21:54:24
回答 5查看 6.2K关注 0票数 19

我正在尝试编写一个调用自身的lambda表达式,但我似乎找不到任何语法来实现这一点,或者即使它是可能的。

实际上,我想将以下函数转换为下面的lambda表达式:(我意识到这是一个愚蠢的应用程序,它只是添加了一些内容,但我正在探索如何在python中使用lambda表达式)

代码语言:javascript
复制
def add(a, b):
   if a <= 0:
      return b
   else:
      return 1 + add(a - 1, b)

add = lambda a, b: [1 + add(a-1, b), b][a <= 0]

但是调用add的lambda形式会导致运行时错误,因为达到了最大递归深度。有没有可能在python中做到这一点?或者我只是犯了个愚蠢的错误?哦,我用的是python3.0,但我不认为这有什么关系?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1203292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档