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 内置函数和匿名函数
------------------------>>>>>>>>>>>>>>>内置函数<<< ...
随机推荐
- C++ for循环语句
#include "pch.h" #include<iostream> using namespace std; int main() { int i = 1, sum ...
- 中文乱码 URLEncode之后,后台获取仍是乱码问题详解
java中获取到参数的时候,这时候默认使用的是iso8859-1进行解码的,那么就再使用URLEncode的encoe方法对其进行编码一次,编码格式使用iso8859-1,这样我们就获得最初使用utf ...
- sql习题及答案
sql习题:http://www.cnblogs.com/wupeiqi/articles/5729934.html 习题答案参考:https://www.cnblogs.com/wupeiqi/ar ...
- echarts 自适应方法 x和y x2和y2
grid:{ x:65, y:20, x2:30, y2:30},
- 小白的python之路10/31&11/1文件操作系统
文件操作系统的介绍 ext4的superblock块是超级快,innode 块是专门存放文件信息的, block count将硬盘做成block块,对操作系统而言写在block块上就可了,eg:文件1 ...
- 一个简单的windows勒索软件分析
根据分析,此病毒是一个勒索软件,通过修改登录用户密码,留下勒索QQ号码向用户索要金钱. 它调用了Kernel32.dll里的WinExec来执行更改用户密码的cmd命令,密码为107289,更改完密码 ...
- python学习------模块
模块(modue)的概念 在计算机程序开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件 ...
- 并查集(POJ1182)
链接:http://poj.org/problem?id=1182 定义一种关系R(x,y),x > y 时 R(x,y) = 2:x = y 时 R(x,y)= 1:x < y 时 R( ...
- 手把手教你如何使用Cocos2d Console 进行html5项目发布
手把手教你如何使用Cocos2d Console 进行html5项目发布 1.首先需要先安装Cocos2d Console运行需要的工具. 详情参见 这篇文章 http://www.cocoach ...
- 微信小程序上传图片
话不多说,直接上码. <view class="section"> <!--放一张图片或按钮 点击时去选择图片--> <image class='ph ...