python如何停止递归


Posted in Python onSeptember 09, 2020

首先,在递归函数之外定义一个全局变量:isGo,布尔型,初始值为真,意思是可以继续循环。

接着,在递归循环的一开始就设置判断机制,一旦isGo的值为假,就层层阻止,直到退出所有层的循环,从而达到强制退出递归的目的。

if(isGo==false){
return
}

最后,在递归的“满足条件”代码中增加如下语句:

isGo =false;

下面给出修改后的代码:

var isGo:Boolean=true
functionarr_all(pre:Array,nex:Array) {
if(isGo==false){return}
var j:uint=nex.length;
if (j==1) {
var t=[];
for (var i:uint=0;i<pre.length; i++) {
t.push(pre[i]);
}
t.push(nex[0]);
isGo =false;
returninfo.appendText("\n"+pc(t));//..out........
}
for (var k:uint=0; k<j; k++) {
var p:Array=pre.slice();
var s:Array=nex.slice();
p.push(s.splice(k,1));
arr_all(p,s);
}
}

问题补充:

python停止函数中的递归

我有一个函数,它的工作方式类似于树遍历,但它会遍历字典。dict中的每个键在列表中都有两个项,因此结构类似于二叉树。我试图找到一个特定的键,同时从一个给定的键开始,当我找到键时,我想停止我的功能并返回我所处的深度。我在dict中搜索find the key,但递归函数不会在return语句处停止。 我的职能:

def count(dict, key, depth):
  if key is not None:
    if key == 42:
      return depth
    return count(map, map[key][0], depth+1)
    return count(map, map[key][1], depth+1)

到此这篇关于python如何停止递归的文章就介绍到这了,更多相关python停止递归的方法内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
在Python中操作字符串之startswith()方法的使用
May 20 Python
Python实现带百分比的进度条
Jun 28 Python
Python2和Python3的共存和切换使用
Apr 12 Python
Python3列表内置方法大全及示例代码小结
May 10 Python
Python超越函数积分运算以及绘图实现代码
Nov 20 Python
python list数据等间隔抽取并新建list存储的例子
Nov 27 Python
Python爬虫解析网页的4种方式实例及原理解析
Dec 30 Python
使用python执行shell脚本 并动态传参 及subprocess的使用详解
Mar 06 Python
tensorflow 大于某个值为1,小于为0的实例
Jun 30 Python
Python基于traceback模块获取异常信息
Jul 23 Python
浅谈Python协程asyncio
Jun 20 Python
Pandas实现批量拆分与合并Excel的示例代码
May 30 Python
python能做哪些生活有趣的事情
Sep 09 #Python
Python 连接 MySQL 的几种方法
Sep 09 #Python
python实现AHP算法的方法实例(层次分析法)
Sep 09 #Python
Pytorch 扩展Tensor维度、压缩Tensor维度的方法
Sep 09 #Python
Python列表推导式实现代码实例
Sep 09 #Python
利用Python中的Xpath实现一个在线汇率转换器
Sep 09 #Python
pytorch使用horovod多gpu训练的实现
Sep 09 #Python
You might like
WIN8.1下搭建PHP5.6环境
2015/04/29 PHP
PHP准确取得服务器IP地址的方法
2015/06/02 PHP
ThinkPHP 框架实现的读取excel导入数据库操作示例
2020/04/14 PHP
javascript parseInt 函数分析(转)
2009/03/21 Javascript
js客户端快捷键管理类的较完整实现和应用
2010/06/08 Javascript
JavaScript学习笔记之获取当前目录的实现代码
2010/12/14 Javascript
解决javascript:window.close()在chrome,Firefox下失效的问题
2013/05/07 Javascript
JS调用页面表格导出excel示例代码
2014/03/18 Javascript
JQuery仿小米手机抢购页面倒计时效果
2014/12/16 Javascript
JQuery判断checkbox是否选中及其它复选框操作方法合集
2015/06/01 Javascript
JavaScrip常见的一些算法总结
2015/12/28 Javascript
jQuery实现每隔几条元素增加1条线的方法
2016/06/27 Javascript
js中window.open的参数及注意注意事项
2016/07/06 Javascript
NodeJS处理Express中异步错误
2017/03/26 NodeJs
原JS实现banner图的常用功能
2017/06/12 Javascript
使用yeoman构建angular应用的方法
2017/08/14 Javascript
angularJs中$scope数据序列化的实例
2018/09/30 Javascript
Vue-cli3.x + axios 跨域方案踩坑指北
2019/07/04 Javascript
如何构建 vue-ssr 项目的方法步骤
2020/08/04 Javascript
关于element-ui表单中限制输入纯数字的解决方式
2020/09/08 Javascript
Ant design vue中的联动选择取消操作
2020/10/31 Javascript
深入理解python函数递归和生成器
2016/06/06 Python
python opencv实现图片旋转矩形分割
2018/07/26 Python
Python运行不显示DOS窗口的解决方法
2018/10/22 Python
Python钉钉报警及Zabbix集成钉钉报警的示例代码
2020/08/17 Python
纯CSS3实现3D旋转书本效果
2016/03/21 HTML / CSS
html5播放视频且动态截图实现步骤与代码(支持safari其他未测试)
2013/01/06 HTML / CSS
Html5原创俄罗斯方块(基于canvas)
2019/01/07 HTML / CSS
汉米尔顿手表官网:Hamilton
2020/09/13 全球购物
数学系个人求职信范文
2014/01/30 职场文书
人事专员的岗位职责
2014/03/01 职场文书
大学生职业生涯规划书汇总
2014/03/20 职场文书
法制宣传教育方案
2014/05/09 职场文书
Golang 空map和未初始化map的注意事项说明
2021/04/29 Golang
Python 中的Sympy详细使用
2021/08/07 Python
MySQL 数据类型详情
2021/11/11 MySQL