关于python之字典的嵌套,递归调用方法


Posted in Python onJanuary 21, 2019

一 字典的嵌套

在机器学习实战决策树部分,生成决策树时用到了字典的嵌套。

>>>s1={'no surface':{}}
>>>s1['no surfacce'][0]='no'
>>>s1
{'no surface':{0:'no'}}
>>>s2={'flipper':{}}
>>>s2['flipper'][0]='no'
>>>s2['flipper'][1]='yes'
>>>s1['no surface'][1]==s2
>>>s1
{'no surface':{0:'no',1:{'flipper':{0:'no,1:'yes''}}}}

在上面构造嵌套字典的过程中,可以通过key来得到相应的value,而相应的value又可以是由字典构成的,再次利用key作为索引层级得到value。

二 递归调用

递归函数算阶乘

def fact():
if n==1:
  return 1
return n*fact(n-1)

如果我们计算fact(5),可以根据函数定义看到计算过程如下:

===> fact(5) 
===> 5 * fact(4) 
===> 5 * (4 * fact(3)) 
===> 5 * (4 * (3 * fact(2))) 
===> 5 * (4 * (3 * (2 * fact(1)))) 
===> 5 * (4 * (3 * (2 * 1))) 
===> 5 * (4 * (3 * 2)) 
===> 5 * (4 * 6) 
===> 5 * 24 
===> 120

以上这篇关于python之字典的嵌套,递归调用方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python标准算法实现数组全排列的方法
Mar 17 Python
用PyQt进行Python图形界面的程序的开发的入门指引
Apr 14 Python
Python自动调用IE打开某个网站的方法
Jun 03 Python
Python多进程分块读取超大文件的方法
Apr 13 Python
Python实现学生成绩管理系统
Apr 05 Python
Python获取数据库数据并保存在excel表格中的方法
Jun 12 Python
Python跳出多重循环的方法示例
Jul 03 Python
使用turtle绘制五角星、分形树
Oct 06 Python
centos7中安装python3.6.4的教程
Dec 11 Python
基于spring boot 日志(logback)报错的解决方式
Feb 20 Python
django模型动态修改参数,增加 filter 字段的方式
Mar 16 Python
python入门:argparse浅析 nargs='+'作用
Jul 12 Python
对python 合并 累加两个dict的实例详解
Jan 21 #Python
python去重,一个由dict组成的list的去重示例
Jan 21 #Python
Python实现计算字符串中出现次数最多的字符示例
Jan 21 #Python
python3.6数独问题的解决
Jan 21 #Python
解决python给列表里添加字典时被最后一个覆盖的问题
Jan 21 #Python
对python列表里的字典元素去重方法详解
Jan 21 #Python
在Python中字典根据多项规则排序的方法
Jan 21 #Python
You might like
浅谈PDO的rowCount函数
2015/06/18 PHP
php获取linux命令结果的实例
2017/03/13 PHP
PHP递归遍历文件夹去除注释并压缩php源代码的方法示例
2018/05/23 PHP
如何解决PHP获取不到SESSION信息之一般情况
2019/10/10 PHP
多个js与css文件的合并方法详细说明
2012/12/26 Javascript
javaScript 动态访问JSon元素示例代码
2013/08/30 Javascript
javascript自定义startWith()和endWith()的两种方法
2013/11/11 Javascript
一个简单的Node.js异步操作管理器分享
2014/04/29 Javascript
JS简单实现多级Select联动菜单效果代码
2015/09/06 Javascript
详解JavaScript的另类写法
2016/04/11 Javascript
jQuery插件开发汇总
2016/05/15 Javascript
BOM系列第一篇之定时器setTimeout和setInterval
2016/08/17 Javascript
js排序与重组的实例讲解
2017/08/28 Javascript
详解Node.js中的Async和Await函数
2018/02/22 Javascript
说说node中的可读流和可写流的区别
2018/06/01 Javascript
全面解析vue router 基本使用(动态路由,嵌套路由)
2018/09/02 Javascript
Vue.Draggable拖拽功能的配置使用方法
2020/07/29 Javascript
对vuex中store和$store的区别说明
2020/07/24 Javascript
python简单程序读取串口信息的方法
2015/03/13 Python
python获取当前日期和时间的方法
2015/04/30 Python
你所不知道的Python奇技淫巧13招【实用】
2016/12/14 Python
分享一下Python数据分析常用的8款工具
2018/04/29 Python
Django 中使用流响应处理视频的方法
2018/07/20 Python
Python如何实现在字符串里嵌入双引号或者单引号
2020/03/02 Python
在Python中用GDAL实现矢量对栅格的切割实例
2020/03/11 Python
Django models filter筛选条件详解
2020/03/16 Python
python爬虫中抓取指数的实例讲解
2020/12/01 Python
Marlies Dekkers内衣美国官方网上商店:高端内衣品牌
2018/11/12 全球购物
春节请假条
2014/04/11 职场文书
医德考评自我评价
2014/09/14 职场文书
共青团员自我评价
2015/03/10 职场文书
医院财务人员岗位职责
2015/04/14 职场文书
2016公司中秋节寄语
2015/12/07 职场文书
redis通过6379端口无法连接服务器(redis-server.exe闪退)
2021/05/08 Redis
springboot 启动如何排除某些bean的注入
2021/08/02 Java/Android
从原生JavaScript到React深入理解
2022/07/23 Javascript