python - python中的简单递归函数
问题描述
编码非常新,尤其是功能。我正在尝试创建一个递归函数,从 开始n == 1
,除以n
2,然后继续将下一个数字除以 2。数学方法是fn = fn-1/2
。代码如下
def half(n):
return half(n/2)
half(1)
但我不断收到“超出最大递归深度”
请帮忙?
解决方案
你需要设置一个递归限制,你不能显示无限像 if n>0.00001: return half(n/2) else return n
推荐阅读
- python - 下订单时如何在库存中创建减法?[Django] [Python] [电子商务网站]
- reactjs - 编写 onClick 多行函数的最佳方法?
- javascript - 如何使用javascript根据API值更改css?
- html - 输入不可点击
- python - 您可以将表达式发送到 python 中的函数或以其他方式捕获表达式的文本吗?
- python - 找到相对于其先前位置移动最多的两个点
- c# - 关闭表单不会关闭应用程序
- vba - 来自会议的 VBA 电子邮件丢失其格式?
- mysql - 传销/金字塔的数据库设计
- performance - 获取多个钱包地址的签名和测试 ethrewum 以进行负载测试