python内置函数and匿名函数
一.内置函数
什什么是内置函数?
就是python给你提供的. 拿来直接⽤用的函数,
比如print., input等等. 截⽌止 到python版本3.6.2 python⼀一共提供了了68个内置函数.
他们就是python直接提供给我们的.
二.匿名函数
lamda匿匿名函数 为了了解决⼀一些简单的需求⽽而设计的⼀一句句话函数
语法: 函数名 = lambda 参数: 返回值
# 计算n的n次⽅方
def func(n):
return n**n
print(func(10)) f = lambda n: n**n print(f(10))
print(list(f))或者
for i in f
pirnt(i)
注意:
1. 函数的参数可以有多个. 多个参数之间⽤用逗号隔开
2. 匿匿名函数不管多复杂. 只能写⼀一⾏行行, 且逻辑结束后直接返回数据
3. 返回值和正常的函数⼀一样, 可以是任意数据类型
匿匿名函数并不是说⼀一定没有名字. 这⾥里里前⾯面的变量量就是⼀一个函数名. 说他是匿匿名原因是我们通 过__name__查看的时候是没有名字的. 统⼀一都叫lambda. 在调⽤用的时候没有什什么特别之处. 像正常的函数调⽤用即可
三.排序函数 sorted() 让自己定义排序的规则
语法: sorted(Iterable, key=None, reverse=False)
Iterable: 可迭代对象
key: 排序规则(排序函数), 在sorted内部会将可迭代对象中的每⼀一个元素传递给这个函 数的参数. 根据函数运算的结果进⾏行行排序
reverse: 是否是倒叙. True: 倒叙, False: 正序
lst = [11, 5, 36, 1, 27, 58] s = sorted(lst) # 默认从小到大排序
print(s)
lst = ["胡一菲", "张伟", "关谷神奇", "曾小贤吕小布", "诺澜"]
def func(s):
return len(s) # 返回长度 # 执行流程:
# 把可迭代对象中的每一项拿出来, 作为参数传递给后面key函数.
# 函数返回数字, 根据数字进行排序
g = sorted(lst, key=func)
g = sorted(lst, key=lambda s: len(s))
print(g)
四.筛选函数 filter()
语法: filter(function. Iterable)
function: ⽤用来筛选的函数. 在filter中会⾃自动的把iterable中的元素传递给function. 然后 根据function返回的True或者False来判断是否保留留此项数据
Iterable: 可迭代对象
lst = ['张无忌', '张翠山', '范冰冰', '金毛狮王', '李冰冰'] # 过滤掉姓张的人
# 把可迭代对象打开 . 把内部元素一个一个的传递给前面的函数. 由这个函数决定此项是否保留
f = filter(lambda name: not name.startswith('张'), lst) print('__iter__'in dir(f)) # 可迭代对象
for el in f:
print(el)
五.映射函数map()
语法: map(function, iterable) 可以对可迭代对象中的每⼀一个元素进⾏行行映射. 分别取执⾏行行 function
lst = ['篮球球', '打打台球', '爬荒山', '步']
g = map(lambda s:'爱好:'+ s,lst)
print(list(g))
最新文章
- 自己写的jquery 弹框插件
- Magnifier笔记
- Entity Framework 第九篇 关于自增列的事务处理
- vsftpd配置参数详细整理
- 一个统计目录文件大小的php函数
- js文本框失去焦点事件与按钮单击事件的冲突问题
- 域名地址默认跳转到www(301重定向)
- oracle生成随机数
- 使用Java编写的B*算法
- [转载]John Burkardt搜集的FORTRAN源代码
- 串匹配模式中的BF算法和KMP算法
- 二、Mysql(二)
- 微软project文件mpp解析
- python之多线程 threading.Lock() 和 threading.RLock()
- pygame-KidsCanCode系列jumpy-part9-使用spritesheet
- 超简单系列:ubuntu 13.04 安装 apache2.2+mod_wsgi+Django
- .closest 样例收集
- Dream------scala--Tuple、Array、Map与文件操作
- 构造Huffman以及实现
- golang (5) ---工程管理
热门文章
- window 导入sql 防止乱码
- 使用Jedis操作Redis-使用Java语言在客户端操作---对key的操作
- htmlunit第一个爬虫演示 目标网址http://ent.sina.com.cn/film/
- Appium_Python_Client介绍
- 洛谷P1390 公约数的和 [2017年6月计划 数论12]
- vuecli3取消eslint
- 微服务开源生态报告 No.8
- 【JZOJ3214】【SDOI2013】方程
- 批量删除maven lastUpdated
- elipse egit的使用