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实现的一个p2p文件传输实例
Jun 04 Python
wxPython窗口中文乱码解决方法
Oct 11 Python
Python实现的HTTP并发测试完整示例
Apr 23 Python
NumPy 如何生成多维数组的方法
Feb 05 Python
Python正则表达式指南 推荐
Oct 09 Python
python 对key为时间的dict排序方法
Oct 17 Python
python实现汽车管理系统
Nov 30 Python
pandas去重复行并分类汇总的实现方法
Jan 29 Python
python利用多种方式来统计词频(单词个数)
May 27 Python
查看端口并杀进程python脚本代码
Dec 17 Python
python+selenium定时爬取丁香园的新型冠状病毒数据并制作出类似的地图(部署到云服务器)
Feb 09 Python
Pycharm插件(Grep Console)自定义规则输出颜色日志的方法
May 27 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 json_encode()函数返回json数据实例代码
2014/10/10 PHP
yii2 url重写并隐藏index.php方法
2018/12/10 PHP
简单实用的PHP文本缓存类实例
2019/03/22 PHP
一个js的tab切换效果代码[代码分离]
2010/04/11 Javascript
FusionCharts图表显示双Y轴双(多)曲线
2012/11/22 Javascript
javascript 弹出的窗口返回值给父窗口具体实现
2013/11/23 Javascript
jQuery实现的经典滑动门效果
2015/09/22 Javascript
jQuery控制div实现随滚动条滚动效果
2016/06/07 Javascript
form表单序列化详解(推荐)
2017/08/15 Javascript
基于vue2.0动态组件及render详解
2018/03/17 Javascript
在react中使用vuex的示例代码
2018/07/30 Javascript
jQuery 实现批量提交表格多行数据的方法
2018/08/09 jQuery
vue-cli V3.0版本的使用详解
2018/10/24 Javascript
vue+element-ui实现表格编辑的三种实现方式
2018/10/31 Javascript
vue封装一个简单的div框选时间的组件的方法
2019/01/06 Javascript
VueJs里利用CryptoJs实现加密及解密的方法示例
2019/04/29 Javascript
javascript(基于jQuery)实现鼠标获取选中的文字示例【测试可用】
2019/10/26 jQuery
Vue使用虚拟dom进行渲染view的方法
2019/12/26 Javascript
ES6的循环与可迭代对象示例详解
2021/01/31 Javascript
[43:18]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.22
2019/09/05 DOTA
python 实现文件的递归拷贝实现代码
2012/08/02 Python
Python 实现链表实例代码
2017/04/07 Python
Python实现针对中文排序的方法
2017/05/09 Python
python利用dir函数查看类中所有成员函数示例代码
2017/09/08 Python
Python日期时间对象转换为字符串的实例
2018/06/22 Python
python版百度语音识别功能
2019/07/09 Python
pytorch 常用线性函数详解
2020/01/15 Python
Python绘图之二维图与三维图详解
2020/08/04 Python
匡威意大利官方商店 :Converse意大利
2018/11/27 全球购物
小学教师岗位职责
2013/11/25 职场文书
领导班子“四风问题”“整改方案
2014/10/02 职场文书
个人授权委托书范本格式
2014/10/12 职场文书
劳动模范获奖感言
2015/07/31 职场文书
2016年党员公开承诺书范文
2016/03/24 职场文书
入党心得体会
2019/06/20 职场文书
关于Mybatis中SQL节点的深入解析
2022/03/19 Java/Android