day 15递归 匿名函数
三元表达式
目的是简化书写
局限性:三元表达式智能简化仅有两个分支的if判断,而且这个判断无论是否成立都必须要返回值
res = True if age >=18 else False
递归:
递归指的是递归调用,简单的说就是一个函数在执行过程中直接或者间接 的调用该函数本身
递归调用本质上就是循环执行代码,与普通循环不同的是,函数调用,会产生一系列内存开销,而循环则没有
递归是要注意的情况
1,一定要有递归结束条件,不然就会进入死循环
2.循环调用的次数不能超过系统的限制
3.每一次执行递归都应该使问题的规模减小
4.python中没有尾递归优化机制
匿名函数:
特点:没有名字的函数,只能临时使用一次,用完就没有了
匿名函数与有名函数的区别
参数不需要括号,并且支持所有类型的参数
名称空间与作用域关系完全相同
函数体中不能写return,会自动将执行结果返回
函数体只能有一个表达式且不能换行
内置函数(max,min,sorted,map,filter,reduce)
当默认的比较方式无法满足需求时,可以通过传入一个函数来决定使用什么比较
max(salyary,key=lambda k:salary[k]) #有返回值
min(salary,key=lambad k:salary[k]) #有返回值
sorted(salary,key=lambad k:salary[k]) #
map(映射) filter(过滤) reduce(合并)
map 用于从一个可迭代对象中取出所有数据,进行一系列操作后,在返回新列表中
filter:用于从一堆数据中过滤一些不满足条件的数据,提供一个函数,要函数的返回值是bool类型,
True表示保留,False就过滤掉
reduce 将列表总的数据进行合并, 每次传两个值n和n+1
day 15递归 匿名函数的更多相关文章
- Python入门之三元表达式\列表推导式\生成器表达式\递归匿名函数\内置函数
本章目录: 一.三元表达式.列表推导式.生成器表达式 二.递归调用和二分法 三.匿名函数 四.内置函数 ================================================ ...
- day13 内置函数二 递归,匿名函数,二分法
.匿名函数(名字统一叫lambda) .语法 lambda 参数:返回值 .参数可以有多个,用逗号隔开 .只能写一行,执行结束后直接返回值 4返回值和正常函数一样,可以是任意值 .列: f=lambd ...
- python函数3-函数嵌套/递归/匿名函数
2 .函数递归: 3.匿名函数
- python基础编程: 编码补充、文件操作、集合、函数参数、函数递归、二分查找、匿名函数与高阶函数
目录: 编码的补充 文件操作 集合 函数的参数 函数的递归 匿名函数与高阶函数 二分查找示例 一.编码的补充: 在python程序中,首行一般为:#-*- coding:utf-8 -*-,就是告诉p ...
- (转)Javascript匿名函数的写法、传参、递归
(原)http://www.veryhuo.com/a/view/37529.html (转)javascript匿名函数的写法.传参和递归 javascript匿名函数的写法.传参和递归 http: ...
- (转)javascript匿名函数的写法、传参和递归
(原)http://www.veryhuo.com/a/view/37529.html (转)javascript匿名函数的写法.传参和递归 http://www.veryhuo.com 2011-0 ...
- python协程函数、递归、匿名函数与内置函数使用、模块与包
目录: 协程函数(yield生成器用法二) 面向过程编程 递归 匿名函数与内置函数的使用 模块 包 常用标准模块之re(正则表达式) 一.协程函数(yield生成器用法二) 1.生成器的语句形式 a. ...
- python之旅:三元表达式、列表推导式、生成器表达式、函数递归、匿名函数、内置函数
三元表达式 #以下是比较大小,并返回值 def max2(x,y): if x > y: return x else: return y res=max2(10,11) print(res) # ...
- python 基础篇 15 内置函数和匿名函数
------------------------>>>>>>>>>>>>>>>内置函数<<< ...
随机推荐
- LAMP环境配置安装注意安装步骤及说明事项
一.安装gcc shell># yum -y install gcc 二.安装zlib压缩库 shell>## cd /home/hsk/tar shell># tar –zxvf ...
- windows+Apache+mod_wsgi+flask部署笔记
windows是用的2008 server 64位. 照着网上教程即可:https://www.jianshu.com/p/0aa1c7097976 但是有个问题: Apache2.4怎么配置???跟 ...
- PAT 1128 N Queens Puzzle
1128 N Queens Puzzle (20 分) The "eight queens puzzle" is the problem of placing eight ch ...
- Redhat 6.3上安装libssh
遇到了很多坑,决定记录下来,有些经验还是很有帮助的. 最重要的一条就是:安装rpm包,总是比编译源码安装(make&make install)更快.记住两个rpm网站:https://pkgs ...
- Source Insight 4.0安装使用教程
一.说明 Source Insight是什么:Source Insight是一款代码编缉.浏览.分析工具. Source Insight与文本编缉器有什么区别:Notepad++等文本编缉器也可以编缉 ...
- SQLite数据库 简介、特点、优势、局限性及使用
SQLite简介 SQLite是一个进程内的轻量级嵌入式数据库,它的数据库就是一个文件,实现了自给自足.无服务器.零配置的.事务性的SQL数据库引擎.它是一个零配置的数据库,这就体现出来SQLite与 ...
- 如何将baseUrl项目地址提取放到放到static
原本项目的baseUrl地址是放在src/common/config.js ,但是这有一个缺点,就是本地测试一个地址,生产一个地址.每发一次不同環境的包就要build一下,太麻烦了!有没有解决的办法呢 ...
- node遍历文件夹并读取文件内容
var fs = require('fs'); var path = require('path');//解析需要遍历的文件夹 var filePath = path.resolve('./dist' ...
- java字符串根据正则表达式让单词首字母大写
public class Da { public static void main(String[] args) { String s = "hello_*java_*world" ...
- 在Ubuntu14.04上配置jdk环境
服务器环境:Ubuntu14.04 server 1.进入oracle官网下载jdk1.7.0_71_x64.gz 重命名为jdk1.7 2.使用tar -xvf jdk1.7.0_71_x64. ...