Python 递归
2018-04-20 19:00 钱先生 阅读(166) 评论(0) 编辑 收藏 举报递归特性
- 必须有一个明确的结束条件
- 每次进入更深一层递归时, 问题规模相比上次递归都应有所减少
- 递归效率不高,递归层次过多会导致栈溢出
1 # 递归必须有结束条件,否则会进入死循环 (如果是死循环, 系统最多递归999次就会报错) 2 def calc(n): 3 print(n) 4 if int (n/2)>0: 5 return calc(int (n/2)) # 如果不加int, 因为有小数(无理小数),还是不会结束 6 print('-->',n)