python基础--递归、三元表达式、列表(字典)生成式、匿名函数、常用的内置函数
函数的递归:函数在调用阶段直接或者间接的又调用自身
递归的两个阶段:
1、回溯:就是一次次重复的过程,这个重复的过程必须建立在每一次重复问题的复杂度都是应该下降的,直接有一个最终的结束条件(这个结束条件是必须的,否则就不会结束,直到到当前递归的最大层数然后报错)
2、递推:一次次往回推导的过程
如何查看当前递归的最大层数:
import sys
print(sys.getrecursionlimit())
# 如果想自定义最大层数, 也可以对括号中进行传参
二分查看算法:二分算法的推导过程
三元表达式:
res = x if x > y else y
# 如果if后面的条件成立就返回if前面的值,否则就返回else后面的值
生成式:
列表生成式:是python内置的用来生成list的生成式,在写列表生成式的时候把要生成的元素放在最前面,后面跟着for循环,就可以将list创建出来了,当前for 循环后面还可以跟着if判断,这样我们就可以筛选出我们想要的元素了,这是一种十分便捷的方法
字典生成式:
list4=[('name','zhagnsan'),('age',22),('phone',110)]
#for循环遍历列表,将列表中小元组的key和value取出,作为字典的key:value
dict_1={key:value for key,value in list4}
print(dict_1)
匿名函数:lambda x: x * x
关键字lambda表示匿名函数,冒号前面的x表示函数的参数。
匿名函数有一个限制就是只能是一个表达式,不用写return,返回值就是该表达式的结果。、
好处:匿名函数是没有名字的,所以就不用担心会产生函数名字的冲突。此外匿名函数也是一个函数对象,也可以将匿名函数赋值给一个变量,再利用变量来对这个匿名函数进行调用。
常用的内置函数:
max():返回最大值
filter():基于for 循环的筛选出结果只为True的参数,并返回
min():返回最小值
reduce():这个需要导入:from functools import reduce 在reduce中第三个参数可以传入一个初始化的参数,用来当作初始值进行计算
zip():拉链,基于for循环实现的
map():映射
sort():排序,可以设置升序和降序
python基础--递归、三元表达式、列表(字典)生成式、匿名函数、常用的内置函数的更多相关文章
- Python基础学习笔记(七)常用元组内置函数
参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-tuples.html 3. http://www.liaoxue ...
- python常用的内置函数哈哈
python常用的内置函数集合做一个归类用的时候可以查找 abs 返回数字x的绝对值或者x的摸 all (iterable)对于可迭代的对象iterable中所有元素x都有bool(x)为true,就 ...
- python常用的内置函数
python常用的内置函数集合做一个归类用的时候可以查找- abs 返回数字x的绝对值或者x的摸 - all (iterable)对于可迭代的对象iterable中所有元素x都有bool(x)为tru ...
- python 函数 装饰器 内置函数
函数 装饰器 内置函数 一.命名空间和作用域 二.装饰器 1.无参数 2.函数有参数 3.函数动态参数 4.装饰器参数 三.内置函数 salaries={ 'egon':3000, 'alex':10 ...
- day15生成器send方法,递归,匿名函数,max结合匿名工作原理,常用的内置函数
复习 ''' 1.带参装饰器 - 自定义 | wraps def wrap(info) def outer1(func): from functools import wraps @wraps(fun ...
- python递归-三元表达式-列表生成式-字典生成式-匿名函数-部分内置函数-04
递归 递归: # 函数在调用阶段直接或间接地又调用了自身 应用场景: # 将列表中的数字依次打印出来(循环的层数是你必须要考虑的点) --> l = [1, [2, [3, [4, [5, ...
- Python 函数递归-三元表达式-列表生成式-字典生成式-匿名函数-内置函数
上节课复习: 1. 无参装饰器 def 装饰器名字(func): def wrapper(*args,**kwargs): res = func(*args,**kwargs) return res ...
- Python入门之三元表达式\列表推导式\生成器表达式\递归匿名函数\内置函数
本章目录: 一.三元表达式.列表推导式.生成器表达式 二.递归调用和二分法 三.匿名函数 四.内置函数 ================================================ ...
- Python学习笔记——常用的内置函数
一.yield def EricReadlines(): seek = 0 while True: with open('D:/temp.txt','r') as f: f.seek(seek) da ...
随机推荐
- 使用java代码动态配置与xml文件结合的方式使用mybatis-generator生成代码配置
1.使用java代码动态配置与xml文件结合的方式使用mybatis-generator生成代码配置 2.上代码:在resources目录下新建:generatorConfiguration.xml文 ...
- MySQL操作表和表记录
目录 操作表 增 列约束 列类型 删 改 修改表名 增加字段 修改字段 删除字段 查 复制表结构 操作表数据 增 删 改 查 操作表 增 创建表语法 创建一个表,多个字段: create table ...
- poj3167- Cow Patterns
传送门 两个串相等定义为串中每一位排序后的相对大小相等. 一位相等等价于这一位前面比他小的和等于他的数的个数相等. 那么用kmp,比较的时候比较这两个个数就可以了. 一开始很瓜地想,询问一段区间内比我 ...
- arguments的介绍(一)
arguments 是一个类数组对象.代表传给一个function的参数列表. 1.1 arguments length arguments 是个类数组对象,其包含一个 length 属性,可以用 a ...
- day 42 02--CSS的继承性和层叠性
02--CSS的继承性和层叠性 本节目录 一 继承性 二 层叠性 三 层叠性权重相同处理 一 继承性 css有两大特性:继承性和层叠性 面向对象语言都会存在继承的概念,在面向对象语言中,继承的特点 ...
- PAT甲级——1072 Gas Station
A gas station has to be built at such a location that the minimum distance between the station and a ...
- hue mysql连接不上数据库排查
由于CDH所有的组件都会进行agent检测,所以先到/var/log/cloudera-scm-agent(mysql所在节点进行日志排查),可以发现每次连接会产生一个log路径作为记录hue连接my ...
- AIO异步非阻塞学习
Client:客户端 package aio; import java.io.UnsupportedEncodingException; import java.net.InetSocketAddre ...
- Django项目:CRM(客户关系管理系统)--64--54PerfectCRM实现CRM客户报名链接
# kingadmin.py # ————————04PerfectCRM实现King_admin注册功能———————— from crm import models #print("ki ...
- switch的练习
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...