python3 中递归的最大次数
实际应用中遇到了一个python递归调用的问题,报错如下:
RuntimeError: maximum recursion depth exceeded while calling a Python object
网上找了一下,原来Python确实有递归次数限制,默认最大次数为1000
在正常的python里:
In [1]: sys.setrecursionlimit?
Type: builtin_function_or_method
Base Class: <type 'builtin_function_or_method'>
String Form: <built-in function setrecursionlimit>
Namespace: Interactive
Docstring:
setrecursionlimit(n)
Set the maximum depth of the Python interpreter stack to
n. This limit prevents infinite recursion from causing an
overflow of the C stack and crashing Python. The highest
possible limit is platform-dependent.
那么如何进行判断处理呢?下面给出两段代码,供参考。
代码如下:
def recursion(n): if(n <= 0): return print(n)recursion(n - 1) if __name__ == "__main__":recursion(1000)
当在我自己的机器运行以上代码时,发现最多能打印到998,然后就会抛出 “RuntimeError: maximum recursion depth exceeded” 的错误了。 嘿,还真有限制。但转念一想,python不会这么弱吧。经过一番查找,发现这是python专门设置的一种机制用来防止无限递归造成Python溢出崩溃, 最大递归次数是可以重新调整的。 (http://docs.python.org/3/library/sys.html#sys.setrecursionlimit),修改代码如下:
import sys
sys.setrecursionlimit(1500) # set the maximum depth as 1500def recursion(n): if(n <= 0): return print(n)recursion(n - 1) if __name__ == "__main__":recursion(1200)
再次运行,顺利通过
python3 中递归的最大次数相关推荐
- Python中递归的最大次数
实际应用中遇到了一个python递归调用的问题,报错如下: RuntimeError: maximum recursion depth exceeded while calling a Python ...
- 数组重复次数最多的元素递归_使用递归计算链接列表中元素的出现次数
数组重复次数最多的元素递归 Solution: 解: Required function: 所需功能: func_occurence ( node *temp) //recursive functio ...
- 数组重复次数最多的元素递归_在不使用递归的情况下计算链接列表中元素的出现次数...
数组重复次数最多的元素递归 Solution: 解: Input: 输入: A singly linked list whose address of the first node is stored ...
- C++求从1到n的正整数中1出现的次数
编程之美中的一道题: 题目:输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数. 例如输入12,从1到12这些整数中包含1 的数字有1,10,11和12,1一共出现了5次. 问题描述:给定 ...
- python从1到n出现了多少个1-Python解决 从1到n整数中1出现的次数
最近在看<剑指Offer>,面试题32的题目:输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数.例如输入12,从1到12这些整数中包含1的数字有1.10.11和12,1一共出 ...
- 程序员面试题精选100题(25)-在从1到n的正数中1出现的次数[算法]
题目:输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数. 例如输入12,从1到12这些整数中包含1 的数字有1,10,11和12,1一共出现了5次. 分析:这是一道广为流传的google ...
- 《剑指offer》-- 数组中的逆序对、最小的K个数、从1到n整数中1出现的次数、正则表达式匹配、数值的整数次方
一.数组中的逆序对: 1.题目: 数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数P.并将P对1000000007取模的结果输出 ...
- 《剑指offer》-整数中1出现的次数
题目描述 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1.10.11.12.13因此共出现6次,但是对于后面问题他就没辙了. ...
- java计算整数出现的次数_[剑指offer题解][Java]1到n整数中1出现的次数
前言 众所周知,<剑指offer>是一本"好书". 如果你是个算法菜鸡(和我一样),那么最推荐的是先把剑指offer的题目搞明白. 对于剑指offer题解这个系列,我的 ...
最新文章
- LeetCode简单题之验证外星语词典
- 北大燕博南:下一代AI芯片— 存内计算的硬核与软着陆 | 报告详解
- Linux中SysRq的使用[zt]
- 设计模式学习笔记-状态模式
- 概率统计:第八章:假设检验
- Python 过滤字母和数字
- threejs获取模型坐标_Threejs倒影实现解析
- 【IOS】从android角度来实现(理解)IOS的UITableView
- vba判断是否为数字的方法小集
- 创建和销毁对象(1)
- java中有效关键字_java中有效的关键字
- 微软发布Visual Studio Mac预览版
- 正版卡巴斯基安全部队2011激活码1年
- Java并发编程之ReentrantReadWriteLock详解
- 计算机怎么改鼠标标志,电脑鼠标指针怎么改 修改电脑鼠标指针方法【图文】...
- 74HC595移位寄存器的使用
- 攻城掠地服务器维护到几点,攻城掠地玩法全解秘
- PyTorch:torch.nonzero——非零元素的定位
- 美女画廊(点击上面的图片下面进行显示)
- 获取手机机身和外置SD卡存储容量的方法