Python_Mix*匿名函数,sorted,filter,map,递归函数,二分法查找
- lambda匿名函数(函数名统一都叫lambda)
- 为了解决简单的需求而设计的一句话函数
- 语法:
- lambda 参数 返回值
n = lambda a,b: max(a,b)
ret = n(9,4)
print(ret)- 注意:
- 函数的参数可以有多个,多个参数之间用逗号隔开
- 匿名函数只能写一行
- 返回值和正常的函数一样,可以是任意数据类型
- 注意:
- sorted( )排序函数
- 语法
- sorted(iterable,key=None,reverse=Flase)
- 语法
lst = [1,2,3,4,5,9,4,8,6,7]
print(sorted(lst)) #得到结果
[1, 2, 3, 4, 4, 5, 6, 7, 8, 9]
#没有key和reverse的值就是默认排序- iterable:可迭代对象
- key:排序规则
- reverse:是否是倒叙.True倒叙,False正序
lst = [6,3,2,8,7,4,6,8,1,7,1,6,5,9,1,2]
s = sorted(lst,reverse = True) #True为倒叙
print(s) #结果
[9, 8, 8, 7, 7, 6, 6, 6, 5, 4, 3, 2, 2, 1, 1, 1]- 运行流程:
- 把可迭代对象中的每一个元素交给后面key函数来执行,得到一个数字(权重),通过这个数字进行排序.
- 运行流程:
- filter( )过滤函数
- 把可迭代对象中的每一个元素交给前面的函数进行筛选,函数返回Trun或者False
- 语法:
- filter(function,iterable)
- map( )映射函数
- 把可迭代对象中的数据交给前面的函数进行执行,返回值就是map的处理结果
- 语法:
- map(function,iterable)
- 递归
- 函数自己调用自己(递归深度:最大1000,但是到不了1000就停了)
- 二分法
- 必须是有序序列才可以使用二分查找,每次能够排除掉一半的数据,查找的效率高
- 核心:
- 掐头去尾取中间,一次砍一半
- 算法
- 常规循环
- 递归循环
lst = [22, 33, 44, 55, 66, 77, 88, 99, 101 , 238 , 345 , 456 , 567 , 678 , 789]
def func(n,left,right): #
if left <= right:
mid = (left + right)//2
if n > lst[mid]:
left = mid+1
return func(n,left,right) #递归入口
if n < lst[mid]:
right = mid-1
return func(n,left,right) #递归入口
if n == lst[mid]:
print('找到了!')
return mid #通过return返回值,终止递归
else:
print('没有这个数~~')
return -1
ret = func(88,0,len(lst)-1)
print(ret)
Python_Mix*匿名函数,sorted,filter,map,递归函数,二分法查找的更多相关文章
- 小学生都能学会的python(<lamda匿名函数,sorted(),filter(),map(),递归函数>)
小学生都能学会的python(<<lamda匿名函数,sorted(),filter(),map(),递归函数,二分法>> 1. lambda 匿名函数 lambda 参数: ...
- lambda匿名函数,sorted(),filter(),map(),递归函数
1.lambda匿名函数 为了解决一些简单的需求而设计的一句话函数 #计算n的n次方 def func(n): return n**n print(func(10)) f = lambda n: n* ...
- 匿名函数 sorted() filter() map() 递归函数
一. lambda() 匿名函数 说白了,从字面理解匿名函数就是看不见的函数,那么他的看不见表现在哪里呢? 其实就是在查询的时候他们的类型都是lambda的类型所以叫匿名,只要是用匿名函数写的大家 ...
- 内置函数二(lambda函数,sorted(),filter(),map(),递归函数,二分法查找)
一,匿名函数 lambda表⽰示的是匿名函数. 不需要⽤用def来声明, ⼀一句句话就可以声明出⼀一个函数 语法: 函数名 = lambda 参数: 返回值 注意: 1. 函数的参数可以有多个. ...
- python之内置函数(lambda,sorted,filter,map),递归,二分法
一.lambda匿名函数 为了解决一些简单需求而设计的一句话函数,lambda表示的是匿名函数,不需要用def来声明,一句话就可以声明出一个函数. 语法: 函数名 = lambda 参数 : 返回值 ...
- Day14--Python--函数二,lambda,sorted,filter,map,递归,二分法
今日主要内容:1. lambda 匿名函数 lambda 参数: 返回值-------------------------------------def square(x): return x**2 ...
- lambda,sorted(),filter(),map(),递归,二分法
1. lambda 匿名函数 语法: lambda 参数:返回值 不能完成复杂的操作例 # li=['21','asdd','weqeqw','wqf']# # it=iter(li)# # prin ...
- Python之匿名函数(filter,map,reduce)
参考博客:Python匿名函数详解--http://blog.csdn.net/csdnstudent/article/details/40112803 Python内建函数之——filter,map ...
- 内置函数--sorted,filter,map
sorted() 排序函数. 语法: sorted(Iterable, key=None, reverse=False) Iterable: 可迭代对象; key: 排序规则(排序函数); reve ...
随机推荐
- python基础_格式化输出(%用法和format用法)
目录 %用法 format用法 %用法 1.整数的输出 %o —— oct 八进制%d —— dec 十进制%x —— hex 十六进制 1 >>> print('%o' % 2 ...
- 使用laraval框架和前端完成restful风格的请求对接(这里只是讨论restful的概念)
现在,在开发中restful风格的api是比较流行的,尤其是在前后端分离的架构中. 这些东西这一下这篇文章中说的很详细:RESTful接口设计原则和优点 下面,我们来讨论如何使用laraval和前端完 ...
- Haproxy官方文档翻译(第二章)配置Haproxy 附英文原文
2.配置 HAProxy 2.1 配置文件格式 Haproxy的配置过程包含了3部分的参数资源:- 命令行中的参数,此种参数总是享有优先权被使用- 配置文件中global节点中的参数,此种参数是进程范 ...
- MySql-2019-4-21-复习
数据库对象:存储,管理和使用数据的不同结构形式,如:表.视图.存储过程.函数.触发器.事件.索引等. 数据库:存储数据库对象的容器. 数据库分两种: 系统数据库(系统自带的数据库):不能修改 info ...
- megacli安装使用
1.下载安装MegaCli64我这里下载的是MegaCli8.07.10.tar.gz 2.解压安装[root@localhost soft]# tar -xvf MegaCli8.07.10.tar ...
- Linux Git用户组
Vivien: groupadd admin useradd -d /home/bill -s /bin/bash -m bill 用户组 查看用户列表 cat /etc/passwd 或者 cat ...
- 为input标签绑定事件的几种方式
为input标签绑定事件的几种方式 1.JavaScript原生态的方式,直接复制下面的代码就会有相应的效果 <!DOCTYPE html><html><head> ...
- 每天一套题打卡|河南省第十一届ACM/ICPC
A 计划日 题意:已知李明在YYYY年MM月DD日星期W订了学习计划,现在想看看李明N天后的完成情况和个人总结,你能告诉我那天的日期和星期几吗? 模拟日期计算: 计算星期可以用基姆拉尔森公式 //中国 ...
- HDU 2665 Kth number(主席树静态区间第K大)题解
题意:问你区间第k大是谁 思路:主席树就是可持久化线段树,他是由多个历史版本的权值线段树(不是普通线段树)组成的. 具体可以看q学姐的B站视频 代码: #include<cmath> #i ...
- Redis5.0+哨兵模式+Keepalived实现高可用
Redis主备配置 原理: 从服务器向主服务器发出SYNC指令,当主服务器接到此命令后,就会调用BGSAVE指令来创建一个子进程专门进行数据持久化工作,也就是将主服务器的数据写入RDB文件中.在数据持 ...