python学习总结1—高阶函数
python 高阶函数学习
高阶函数
介绍python 高阶函数的使用方法
map/reduce函数
map函数
利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。
输入:[‘adam’, ‘LISA’, ‘barT’],输出:[‘Adam’, ‘Lisa’, ‘Bart’]:
def f(name):return name[0].upper()+name[1:].lower()
L1 = ['adam', 'LISA', 'barT']
L2 = list(map(f,L1))
print(L2)
reduce函数
编写一个prod()函数,可以接受一个list并利用reduce()求积:
from functools import reduce
def prod(L):def fn(x,y):return x*yreturn reduce(fn,L)print('3 * 5 * 7 * 9 =', prod([3, 5, 7, 9]))
if prod([3, 5, 7, 9]) == 945:print('测试成功!')
else:print('测试失败!')
filter函数
filter函数用于过滤序列
#筛选出奇数
def is_odd(n):return n % 2 == 1list(filter(is_odd, [1, 2, 4, 5, 6, 9, 10, 15]))
# 结果: [1, 5, 9, 15]
#把序列中的控制符串删掉
def not_empty(s):return s and s.strip()list(filter(not_empty, ['A', '', 'B', None, 'C', ' ']))
# 结果: ['A', 'B', 'C']
sorted 排序函数
sorted函数对学生成绩和名字进行排序
L = [('Bob', 75), ('Adam', 92), ('Bart', 66), ('Lisa', 88)]
def by_name(t):# t[0]代表姓名列,t[1]代表分数列return t[0].upper()
def by_score(t):return t[1] #默认排列顺序从高到低,从低到高取反t[-1]
L2 = sorted(L, key=by_name)
L1 = sorted(L, key=by_score)
print(L1)
print(L2)
返回函数
函数作为返回值i 实现闭包功能
返回函数不能引用循环变量,返回一个函数时没有立即执行,需调用才能执行
def lazy_sum(*args):def sum():ax = 0for n in args:ax = ax + nreturn axreturn sum
f = lazy_sum(1,3,5,7,9)
print(f())
返回函数引用循环变量 方法为在创建一个函数 用该函数的参数去绑定循环变量当前的值 如下代码:
def count():def f(j):def g():return j*jreturn gfs = []for i in range(1,4):fs.append(f(i))return fs
f1,f2,f3 = count()
print(f1())
print(f2())
print(f3())
==输出结果==1,4,9
就先写这么多吧 作为今天的一个高阶函数学习 ,python学习还是很方便的。
人生苦短,我用python哈哈
python学习总结1—高阶函数相关推荐
- python学习——函数式编程——高阶函数
python学习--函数式编程--高阶函数 函数式编程(高阶函数):1:map && reduce; 2 : filter; 3: sorted; ------------------ ...
- Python学习日志10 - 高阶函数和高级应用
Python学习日志 RBHGO的主页欢迎关注 温馨提示:创作不易,如有转载,注明出处,感谢配合~ 目录 文章目录 Python学习日志 目录 前言 进入正题 Python学习日志10课 - 高阶函数 ...
- Python学习之Part09.高阶函数filter(),map(),reduce(),sorted()
1.高阶函数 一个函数作为参数传给另外一个函数: 一个函数的返回值为另外一个函数(若返回值为该函数本身,则为递归) # abs()用来求一个数的绝对值 # 将abs函数赋值,则f==abs f = a ...
- 【廖雪峰Python学习笔记】高阶函数
Higher-order function 高阶函数 映射 过滤算法 排序算法 高阶函数 变量可指向函数 >>> abs # 函数 <built-in function abs ...
- python函数式编程、高阶函数
1.map() python内置的高阶函数,接收一个函数f和一个list,并通过把函数f依次作用在list的每个元素上,得到一个新的list并返回. def f(x):return x * xprin ...
- Python中常用的高阶函数
Python 中常用的高阶函数 ① filter(function,iterable)filter(function, iterable)filter(function,iterable) 过滤器 ...
- 廖雪峰讲python高阶函数求导公式_廖雪峰的学习笔记(三)高阶函数
1.所谓的"高阶函数":把函数对象作为参数的函数. 2.示例: map()函数: 我们先看map.map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数 ...
- Python基础教程:高阶函数和函数嵌套
1.高阶函数: 由于python中一切皆对象,变量是对象,函数也是对象,函数也能像变量那样进行传递.一个函数可以作为参数传给另外一个函数,或者一个函数的返回值为另外一个函数(若返回值为该函数本身,则为 ...
- python 惰性序列_菜鸟学飞自学Python(五)高阶函数
(仅个人学习摘抄) 函数式编程 函数式编程就是一种抽象程度很高的编程范式,特点是允许把函数本身作为参数传入到另一个函数,还允许返回一个函数. 高阶函数 高阶函数--Higher-order funct ...
最新文章
- Java取模函数,再不刷题就晚了!
- Python可视化应用实战-如何制作酷炫的图表?
- Java JDK11快速下载地址
- java中正则表达式
- 拥有开源安全背景的开发员当选白宫技术总监
- 用python的进行压缩文件
- 查询优化器内核剖析第六篇:谈谈Join的顺序问题,纠正江湖偏方
- 姜启源《数学模型》第12章:马氏链模型
- BPSK调制与解调-MATLAB基带仿真
- 【计算理论】非确定性有限自动机 ( NFA ) 转换成 确定性有限自动机 ( DFA )
- 大师级思考者是怎么探索事物本质的?
- 简单粗暴使用Qt图表Qt Chart之barchart
- 《财务报表分析从入门到精通》——读书笔记
- GHOST备份还原系统教程
- 大学物理——关于误差
- 中国互联网的发展历程
- hdu2859 Phalanx(线性dp)
- 《网络安全》课程论文
- ssh中dao自定义的模板类
- 2021年中国箱包发展现状及进出口状况分析:进出口金额均有所增加,贸易顺差进一步扩大 [图]
热门文章
- 做自媒体,有哪些免费下载视频剪辑素材的网站?
- 2021-09-30-THZ-前置
- ReentrantLock解锁流程
- Python 中 __dict__的用法
- 2022P02014139杨智关于香农编码、哈夫曼编码和费诺编码的比较
- Corral the Cows POJ - 3179(二分+前缀和+离散化)
- [散文]芒果女人(作者:毕淑敏)
- Javascript(前端知识)----------基础语法
- 如果我是pm之 演出电影vr购票展示
- elevation 设置无效果