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执行子进程实现进程间通信的方法
Jun 02 Python
Python读取本地文件并解析网页元素的方法
May 21 Python
Linux下python3.6.1环境配置教程
Sep 26 Python
python检测文件夹变化,并拷贝有更新的文件到对应目录的方法
Oct 17 Python
python简单验证码识别的实现方法
May 10 Python
基于Python打造账号共享浏览器功能
May 30 Python
Python实现最常见加密方式详解
Jul 13 Python
Python如何调用外部系统命令
Aug 07 Python
python GUI库图形界面开发之PyQt5菜单栏控件QMenuBar的详细使用方法与实例
Feb 28 Python
windows、linux下打包Python3程序详细方法
Mar 17 Python
Python如何爬取b站热门视频并导入Excel
Aug 10 Python
Python中使用ipython的详细教程
Jun 22 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
PHP 自定义错误处理函数的使用详解
2013/05/10 PHP
PHP仿博客园 个人博客(1) 数据库与界面设计
2013/07/05 PHP
PHP改进计算字符串相似度的函数similar_text()、levenshtein()
2014/10/27 PHP
PHP+Session防止表单重复提交的解决方法
2018/04/09 PHP
php使用自带dom扩展进行元素匹配的原理解析
2020/05/29 PHP
javascript动画效果类封装代码
2007/08/28 Javascript
JQuery的ajax获取数据后的处理总结(html,xml,json)
2010/07/14 Javascript
js URL参数的拼接方法比较
2012/02/15 Javascript
鼠标滚轮控制网页横向移动实现思路
2013/03/22 Javascript
如何解决Jquery库及其他库之间的$命名冲突
2013/09/15 Javascript
JavaScript数组随机排列实现随机洗牌功能
2015/03/19 Javascript
浅析jQuery事件之on()方法绑定多个选择器,多个事件
2016/04/27 Javascript
jQuery+CSS实现一个侧滑导航菜单代码
2016/05/09 Javascript
jQuery实现为LI列表前3行设置样式的方法【2种方法】
2016/09/04 Javascript
微信小程序 定义全局数据、函数复用、模版等详细介绍
2016/10/27 Javascript
jQuery实现ajax无刷新分页页码控件
2017/02/28 Javascript
Vue工程模板文件 webpack打包配置方法
2017/12/26 Javascript
Vue组件化开发思考
2018/02/02 Javascript
vue 之 css module的使用方法
2018/12/04 Javascript
es6数值的扩展方法
2019/03/11 Javascript
vue-socket.io接收不到数据问题的解决方法
2020/05/13 Javascript
Vue中登录验证成功后保存token,并每次请求携带并验证token操作
2020/09/08 Javascript
[01:15:44]首部DOTA2纪录片今日23时全网上映
2014/03/19 DOTA
[00:43]DOTA2小紫本全民票选福利PA至宝全方位展示
2014/11/25 DOTA
Python面向对象程序设计多继承和多态用法示例
2019/04/08 Python
Python 中PyQt5 点击主窗口弹出另一个窗口的实现方法
2019/07/04 Python
Python读取VOC中的xml目标框实例
2020/03/10 Python
python3 配置logging日志类的操作
2020/04/08 Python
python实现npy格式文件转换为txt文件操作
2020/07/01 Python
canvas画布实现手写签名效果的示例代码
2019/04/23 HTML / CSS
详解通过HTML5 Canvas实现图片的平移及旋转变化的方法
2016/03/22 HTML / CSS
网站编辑求职信
2013/10/17 职场文书
硕士研究生自我鉴定
2013/11/08 职场文书
班子群众路线教育实践个人对照检查材料思想汇报
2014/09/30 职场文书
2015年学校办公室工作总结
2015/05/26 职场文书
车辆安全隐患排查制度
2015/08/05 职场文书