python递归函数该怎么用
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,本篇内容介绍了"python递归函数该怎么用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!首先,函数
千家信息网最后更新 2025年12月01日python递归函数该怎么用
本篇内容介绍了"python递归函数该怎么用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
首先,函数就是函数,递归函数也仍然是函数,大家不要误以为函数还分了许多种。只是递归函数和其他函数有所不同,因此给它单独起了一个名字,目的是方便我们交流,你一说递归函数,我就明白了,这个函数在执行的时候会调用自己,仅此而已。
先说我遇到的问题吧。我的程序调用一个API,返回的结果是一个字典,让人难受的是,我需要的信息在字典里,但分布的位置却不是固定的,例如下面的字典:
maze_dict = {
'machine':'apple',
'name':u'升',
'bus':{
'no':1,
'direction':'east',
'west':{
'where':'beijing',
'date':'today',
'python':'python1'
}
},
'python':'python2',
'pythongroup':{
'group':{
'group':{
'group':{
'python':'python3'
}
}
}
}
}
假设我想提取的信息都是以python作为关键字的键值对里的value部分,可是,python关键字具体在哪里,我事先是不知道的。我不能通过关键字,从最外层向里面层层访问,因为这个路径是不确定的。这里,我们就要用到递归函数,层层推进。
def find_python(info,lst):
if not isinstance(info,dict):
return
for k,v in info.items():
if k == 'python':
lst.append(v)
elif isinstance(v,dict):
find_python(v,lst)
if __name__ == '__main__':
lst = []
find_python(maze_dict,lst)
print lst
find_python函数的定义并不复杂,当一个键值对的value部分是字典时,它便再次调用自己,到下一层去寻找python关键字。
理解递归函数的难点在于,每一次函数的调用都从头开始执行了,但是函数传入的参数是变化的,其次,进入到下一层函数时,这一层函数并没有终结哦,而是等到下一层函数结束时,自己再继续执行,就像盗梦空间一样,梦境层层递进,但是也会有一个退出的过程,一定是下一层的梦境结束了,当前这一层做梦的人醒过来,然后继续退出,上一层梦境的人接着醒过来。
"python递归函数该怎么用"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
函数
递归
关键
关键字
字典
梦境
信息
内容
更多
知识
过程
部分
不同
复杂
实用
难受
仅此而已
学有所成
接下来
一次函数
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
软件开发及技术服务合同
西子奥迪斯服务器杳故障
如何学好安全计算软件开发
南沙网络安全建设怎么收费
永融企业中心合发网络技术公司
网络技术与应用的就业前景
常州现代软件开发售后服务
腾讯云服务器右键是哪里
我玩的时服务器地址
高科技互联网片头
涿鹿县网络安全倡议书
自媒体时代大学生网络安全
猫小胖服务器绝育
服务器下载微信下载微信号
铜川ar软件开发报价
服务器上复制数据集
怎么租国外的服务器
网络安全板块儿
主题班会 网络安全说课
mysql数据库死锁的情况
无法ping通对方服务器
服务器数据云备份软件
网络技术研究质量保证
济南做网络安全的公司
gdc服务器价格
rs422串口服务器
四川项目软件开发外包
全国出版社数据库
大华网络视频存储服务器
保存到数据库失败 火鸟门户