匿名函数、sorted()、filter()、map()、递归
一、匿名函数
1.lambda 匿名函数
方法 lambda 参数:返回值 (函数名统一叫lambda)
def func(n):
return n**2
print(func(3))
#这是一个普通的函数,返回值是3
a = lambda n : n**2
print(a(3))
#这是匿名函数,返回值也是3
匿名函数的参数可以两个或多个,返回值也可以是两个或多个。(当返回值是两个以上的时候要用括号括起来),在参数位置如果传人多个参数可以使用*args。
二、sorted() 排序函数
语法:sorted(iterable,key,reverse) key:排序规则 reverse参数不给就是升序,给True就是降序。
运行流程:把可迭代对象中的每一个元素交给后面的key函数来执行。得到一个数字(权重),通过这个数字进行排序。
如是字典,返回排序后的key
dic = {1:"A",3:"C",2:"B"}
print(sorted(dic))
#[1, 2, 3]
lst = ["布加迪威航","法拉利","奥迪A8","11路公交车"]
def func(s):
return len(s)
print(sorted(lst,key=func))
#['法拉利', '奥迪A8', '布加迪威航', '11路公交车']
print(sorted(lst,key=lambda s : len(s)))
#['法拉利', '奥迪A8', '布加迪威航', '11路公交车']
三、filter() 过滤函数
语法:filter(function,iterable)
把可迭代对象中的每一个元素交给前面的函数进行筛选,函数返回Ture或者False
四、map() 映射函数
语法:map(function,iterable)
把可迭代对象中的数据交给前面的函数进行执行,返回值就是map()的处理结果
(这里的映射也具有水桶效应)
五、递归
本质:函数自己调用自己
最大深度:1000,但是不到1000就会停下来
通过递归思想去实现打开本地的某个文件夹里面的所有文件名称
import os#引入os模块
def func(filepath,n):
flies = os.listdir(filepath)#打开你输入的文件夹
for file in flies:#循环当前文件夹里面的内容
file_path = os.path.join(filepath,file)#给文件名称加上路径
if os.path.isdir(file_path):#如果某个文件是文件夹,就打印名字并且再次调用函数
print("\t"*n,file,":")
func(file_path,n+1)
else:
print("\t"*n,file)
func("e:/python视频",0)#第二个参数主要是用来显示层次用的
匿名函数、sorted()、filter()、map()、递归的更多相关文章
- 小学生都能学会的python(<lamda匿名函数,sorted(),filter(),map(),递归函数>)
小学生都能学会的python(<<lamda匿名函数,sorted(),filter(),map(),递归函数,二分法>> 1. lambda 匿名函数 lambda 参数: ...
- Python_Mix*匿名函数,sorted,filter,map,递归函数,二分法查找
lambda匿名函数(函数名统一都叫lambda) 为了解决简单的需求而设计的一句话函数 语法: lambda 参数 返回值 n = lambda a,b: max(a,b) ret = n(9,4) ...
- 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的类型所以叫匿名,只要是用匿名函数写的大家 ...
- python之内置函数(lambda,sorted,filter,map),递归,二分法
一.lambda匿名函数 为了解决一些简单需求而设计的一句话函数,lambda表示的是匿名函数,不需要用def来声明,一句话就可以声明出一个函数. 语法: 函数名 = lambda 参数 : 返回值 ...
- 内置函数 lambda sorted filter map 递归
一 lambda 匿名函数 为了解决一些简单的需求而设计的一句话函数 # 计算 n 的 n次方 def func(n): return n**n print(func(10)) f = 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【day 14-4】sorted filter map+递归文件夹+二分法查找
def func(x): #普通函数 return x*x ret1 = func(10) #匿名函数 f = lambda x:x*x # 匿名函数写法: 匿名函数名=lambda 参数:返回值 ' ...
- Python之匿名函数(filter,map,reduce)
参考博客:Python匿名函数详解--http://blog.csdn.net/csdnstudent/article/details/40112803 Python内建函数之——filter,map ...
随机推荐
- BASH输出着色显示
通过将其输出着色,可以使BASH脚本更漂亮.使用ANSI转义序列设置文本属性,例如前景色和背景色. 使用以下模板格式来编写彩色文本: echo -e "\e[前景色值;背景色值;2m文本\e ...
- mac tar 解压
1.下载mac上对应rar版本 http://www.rarlab.com/download.htm2.利用tar名解压下载的rarosx-5.4.0.tar.gz,版本可能会更新tar xzvf a ...
- TCP/IP学习笔记8--数据链路之基本概念
"在你生命的最初30年中,你养成习惯:在你生命的最后30年中,你的习惯决定了你."---- Steve Jobs TCP/IP对于OSI参考模型的数据链路成及以下部分(物理层)没有 ...
- phaser三个学生做题目
3个学生一起参加考试,一共有三道题,要求所有学生到齐才能开始考试,全部同学都做完第一题,学生才能继续做第二题,全部学生做完了第二题,才能做第三题,所有学生都做完的第三题,考试才结束 public cl ...
- [转帖]谷歌宣称首次实现量子优越性,IBM“不服”,中国同行咋看?
谷歌宣称首次实现量子优越性,IBM“不服”,中国同行咋看? 投递人 itwriter 发布于 2019-10-24 15:46 评论(7) 有306人阅读 原文链接 [收藏] « » https:// ...
- P1308(字符串类,处理字符串查找)
题目描述 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数. 现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给 ...
- 批量删除c文件和h文件中的注释
不知道大家有没有批量删除c文件和h文件中注释的需要,说起来搞笑,偶然翻出来早先写的一份,首先楼猪不是闲的蛋疼写这东西,工作需要,哪里要砖就要搬.冷门的东西大家需要的时候也不一定好找,分享给大家,省的自 ...
- python 之 数据库(创建表的完整语法、基本数据类型)
10.4 创建表的完整语法 create table 表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件] ); #类型:使用限 ...
- 学习RadonDB源码(三)
1. 所谓第四代语言 SQL是一种典型的第四代语言,即4GL,这种语言的突出特点是编写者不需要关注怎么做,只需要告诉系统我要什么就可以. 虽然4GL是这样的一种语言,大大简化了编写者的编写难度,其实底 ...
- VUE框架概括+模块语法使用(上)
vue是什么 官网(https://cn.vuejs.org/) Vue.js是一套构建用户界面的渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计: Vue 的核心库只关注视图 ...