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通过BF算法实现关键词匹配的方法
Mar 13 Python
Django发送html邮件的方法
May 26 Python
Python 登录网站详解及实例
Apr 11 Python
详解python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别
Jun 23 Python
Python2.7下安装Scrapy框架步骤教程
Dec 22 Python
ubuntu16.04制作vim和python3的开发环境
Sep 23 Python
Python中遍历列表的方法总结
Jun 27 Python
python按键按住不放持续响应的实例代码
Jul 17 Python
python 读取修改pcap包的例子
Jul 23 Python
Python全面分析系统的时域特性和频率域特性
Feb 26 Python
Python中Selenium模块的使用详解
Oct 09 Python
python安装及变量名介绍详解
Dec 12 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测试成功的邮件发送案例
2015/10/26 PHP
PHP扩展开发教程(总结)
2015/11/04 PHP
php实现倒计时效果
2015/12/19 PHP
Laravel5.1 框架Request请求操作常见用法实例分析
2020/01/04 PHP
优化网页之快速的呈现我们的网页
2007/06/29 Javascript
jquery利用ajax调用后台方法实例
2013/08/23 Javascript
js字母大小写转换实现方法总结
2013/11/13 Javascript
AngularJS中的模块详解
2015/01/29 Javascript
解析JavaScript的ES6版本中的解构赋值
2015/07/28 Javascript
超精准的javascript验证身份证号的具体实现方法
2015/11/18 Javascript
Angularjs结合Bootstrap制作的一个TODO List
2016/08/18 Javascript
Angular2 (RC5) 路由与导航详解
2016/09/21 Javascript
JavaScript中关键字 in 的使用方法详解
2016/10/17 Javascript
微信小程序 实现拖拽事件监听实例详解
2016/11/16 Javascript
jquery的父、子、兄弟节点查找,节点的子节点循环方法
2016/12/07 Javascript
从源码看angular/material2 中 dialog模块的实现方法
2017/10/18 Javascript
js将当前时间格式化为 年-月-日 时:分:秒的实现代码
2018/01/20 Javascript
web3.js增加eth.getRawTransactionByHash(txhash)方法步骤
2018/03/15 Javascript
vue使用技巧及vue项目中遇到的问题
2018/06/04 Javascript
解决微信授权成功后点击按返回键出现空白页和报错的问题
2020/06/08 Javascript
[04:14]从西雅图到上海——玩家自制DOTA2主题歌曲应援TI9
2019/07/11 DOTA
python批量同步web服务器代码核心程序
2014/09/01 Python
Python利用递归和walk()遍历目录文件的方法示例
2017/07/14 Python
Python3 适合初学者学习的银行账户登录系统实例
2017/08/08 Python
解决Django数据库makemigrations有变化但是migrate时未变动问题
2018/05/30 Python
python修改txt文件中的某一项方法
2018/12/29 Python
Python 中的pygame安装与配置教程详解
2020/02/10 Python
关于Python解包知识点总结
2020/05/05 Python
Opodo意大利:欧洲市场上领先的在线旅行社
2019/10/24 全球购物
初中美术教学反思
2014/01/29 职场文书
会计学毕业生求职信
2014/06/25 职场文书
2014年社区党建工作汇报材料
2014/11/02 职场文书
民主评议党员个人总结
2015/02/13 职场文书
2015秋季开学典礼演讲稿
2015/07/16 职场文书
周一问候语大全
2015/11/10 职场文书
导游词之铁岭象牙山
2019/12/06 职场文书