Python基础之常见内建函数map() 函数接受两个参数python内建函数吗,一个是函数python内建函数吗,一个是可迭代对象(Iterable), map 将传入python内建函数吗的函数依次作用到可迭代对象python内建函数吗的每一个元素,并把结果作为迭代器(Iterator)返回 。
举例说明,有一个函数 f(x)=x^2 ,要把这个函数作用到一个list [1,2,3,4,5,6,7,8,9] 上:
运用简单的循环可以实现:
运用高阶函数 map() :
结果 r 是一个迭代器,迭代器是惰性序列,通过 list() 函数让它把整个序列都计算出来并返回一个 list。
如果要把这个list所有数字转为字符串利用 map() 就简单python内建函数吗了:
小练习:利用 map() 函数 , 把用户输入的不规范的英文名字变为首字母大写其他小写的规范名字 。输入 ['adam', 'LISA', 'barT'] ,输出 ['Adam', 'Lisa', 'Bart']
reduce() 函数也是接受两个参数,一个是函数,一个是可迭代对象 , reduce 将传入的函数作用到可迭代对象的每个元素的结果做累计计算 。然后将最终结果返回 。
效果就是: reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)
举例说明,将序列 [1,2,3,4,5] 变换成整数 12345 :
小练习:编写一个 prod() 函数,可以接受一个 list 并利用 reduce 求积:
map() 和 reduce() 综合练习:编写 str2float 函数,把字符串 '123.456' 转换成浮点型 123.456
filter() 函数用于过滤序列,filter() 也接受一个函数和一个序列,filter() 把传入的函数依次作用于每个元素 , 然后根据返回值是 True 还是 False 决定保留还是丢弃该元素 。
举例说明,删除list中的偶数:
小练习:用 filter() 求素数
定义一个筛选函数:
定义一个生成器不断返回下一个素数:
打印100以内素数:
python内置的 sorted() 函数可以对list进行排序:
sorted() 函数也是一个高阶函数 , 还可以接受一个 key 函数来实现自定义排序:
key 指定的函数将作用于list的每一个元素上,并根据 key 函数返回的结果进行排序.
默认情况下,对字符串排序 , 是按照ASCII的大小比较的 , 由于'Z''a',结果,大写字母Z会排在小写字母a的前面 。如果想忽略大小写可都转换成小写来比较:
要进行反向排序,不必改动key函数,可以传入第三个参数 reverse=True :
小练习:假设我们用一组tuple表示学生名字和成绩: L = [('Bob', 75), ('Adam', 92), ('Bart', 66), ('Lisa', 88)]。用sorted()对上述列表分别按c成绩从高到低排序:
运用匿名函数更简洁:
python、什么是内建函数python内建函数总结
1. abs(x)
abs()函数返回数字(可为普通型、长整型或浮点型)python内建函数吗的绝对值 。如果给出复数python内建函数吗,返回值就是该复数的模 。例如:
print abs(-2,4)
2.4
print abs(4+2j)
4.472135955
2. apply(function,args[,keywords])
apply()函数将args参数应用到function上 。function参数必须是可调用对象(函数、方法或其python内建函数吗他可调用对象) 。args参数必须以
序列形式给出 。列表在应用之前被转换为元组 。function对象在被调用时,将args列表的内容分别作为独立的参数看待 。例如:
apply(add,(1,3,4))
等价于
add(1,3,4)
在以列表或元组定义python内建函数吗了一列参数,且需要将此列表参数分别作为个个独立参数使用的情况下,必须使用apply()函数 。在要把变长参数列应用到已函数上时,apply()函数非常有用 。
可选项keywords参数应是个字典,字典的关键字是字符串 。这些字符串在apply()函数的参数列末尾处给出,它们将被用作关键字参数 。
推荐阅读
- js中的模式对话框返回值,js怎么返回值
- asp.netjs隐藏,jsp隐藏tr
- 单机游戏格斗在哪下载,格斗游戏大全单机版
- js数组中是否包含某个字段,js数组是否包含某个字符串
- linux命令如何补全 linux命令补全按键
- 沙雕陶艺模拟器游戏,沙雕模拟器官方正版
- 微信营销如何互动,微信营销沟通技巧
- php两种数据类型 php几种数据类型
- 如何保护新媒体知识产权,新媒体时代如何保护个人隐私