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通过解析网页实现看报程序的方法
Aug 04 Python
Python通过递归遍历出集合中所有元素的方法
Feb 25 Python
一些Python中的二维数组的操作方法
May 02 Python
Python中序列的修改、散列与切片详解
Aug 27 Python
Python通过Django实现用户注册和邮箱验证功能代码
Dec 11 Python
Python使用爬虫爬取静态网页图片的方法详解
Jun 05 Python
python文件写入write()的操作
May 14 Python
Python 点击指定位置验证码破解的实现代码
Sep 11 Python
python之生成多层json结构的实现
Feb 27 Python
Python IDLE或shell中切换路径的操作
Mar 09 Python
Anaconda的安装及其环境变量的配置详解
Apr 22 Python
keras中的History对象用法
Jun 19 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
Smarty结合Ajax实现无刷新留言本实例
2007/01/02 PHP
提高define性能的php扩展hidef的安装和使用
2011/06/14 PHP
PHP学习笔记(二) 了解PHP的基本语法以及目录结构
2014/08/04 PHP
PHP记录页面停留时间的方法
2016/03/30 PHP
关于php unset对json_encode的影响详解
2018/11/14 PHP
PHP addAttribute()函数讲解
2019/02/03 PHP
使用JavaScript构建JSON格式字符串实现步骤
2013/03/22 Javascript
Query中click(),bind(),live(),delegate()的区别
2013/11/19 Javascript
javascript常见数据验证插件大全
2015/08/03 Javascript
深入理解JavaScript中为什么string可以拥有方法
2016/05/24 Javascript
第一次接触神奇的Bootstrap表单
2016/07/27 Javascript
JS数组排序方法实例分析
2016/12/16 Javascript
js控制按钮,防止频繁点击响应的实例
2017/02/15 Javascript
JS中利用localStorage防止页面动态添加数据刷新后数据丢失
2017/03/10 Javascript
JavaScript高级函数应用之分时函数实例分析
2018/08/03 Javascript
js中innerText/textContent和innerHTML与target和currentTarget的区别
2019/01/21 Javascript
vue2之简易的pc端短信验证码的问题及处理方法
2019/06/03 Javascript
layui使用数据表格实现购物车功能
2019/07/26 Javascript
解决layui-open关闭自身窗口的问题
2019/09/10 Javascript
npx create-react-app xxx创建项目报错的解决办法
2020/02/17 Javascript
[01:05:07]DOTA2-DPC中国联赛 正赛 DLG vs Dragon BO3 第一场2月1日
2021/03/11 DOTA
Python正则获取、过滤或者替换HTML标签的方法
2016/01/28 Python
python中的迭代和可迭代对象代码示例
2017/12/27 Python
浅谈Pandas:Series和DataFrame间的算术元素
2018/12/22 Python
django框架model orM使用字典作为参数,保存数据的方法分析
2019/06/24 Python
在Python3 numpy中mean和average的区别详解
2019/08/24 Python
python自动保存百度盘资源到百度盘中的实例代码
2019/08/26 Python
ZINVO手表官网:男士和女士手表
2019/03/10 全球购物
IBatis持久层技术
2016/07/18 面试题
艺术学院毕业生自我评价
2014/03/02 职场文书
新农村建设标语
2014/06/24 职场文书
工程款催款函
2015/06/24 职场文书
同学聚会祝酒词
2015/08/10 职场文书
导游词之阳朔遇龙河
2019/12/16 职场文书
图神经网络GNN算法
2022/05/11 Python
JS实现页面炫酷的时钟特效示例
2022/08/14 Javascript