当前位置: 首页 > news >正文

python学习笔记 | 8.1、函数式编程-高阶函数

=分割线=

一、核心 3 个基础知识点

1. 变量可以指向函数

  • abs(-10)带括号→ 调用函数,返回计算结果
  • abs不带括号→ 函数本身
  • 可以把函数赋值给变量:
f = abs # 变量f 指向 abs函数 print(f(-10))

👉 结论:函数也是一种数据,可以赋值给变量


2. 函数名本身就是变量

  • absmaxmin本质都是变量

  • 如果你强行赋值:abs = 10

  • 再写abs(-10)直接报错

    原因:

    abs

    不再是函数,变成整数了,数字不能加括号调用


3. 什么是【高阶函数】(必考)

定义

如果一个函数,参数可以接收另一个函数,它就是高阶函数。

✅ 核心逻辑:

变量能存函数 → 函数能当参数传 → 形成高阶函数


二、课本经典案例(你练过无数次)

# 高阶函数 def add(x, y, f): return f(x) + f(y) # 传入 abs 函数当作参数 print(add(-5, 6, abs))

一步步执行流程

  1. 传参:x=-5,y=6,f=abs
  2. f(x)=abs(-5)= 5
  3. f(y)=abs(6)= 6
  4. 相加:5+6=11
  5. 返回打印结果

三、你必须分清的两种写法(再也不报错)

  1. 单参数函数abs()
# 正确 def add(x,y,f): return f(x) + f(y)
  1. 双参数函数max() / min()
# 正确 def calc(a,b,f): return f(a,b)

四、本节终极背诵小结

  1. 不带括号 = 函数本身,可以赋值、可以传参
  2. 函数名是变量,可以被重新覆盖
  3. 接收函数作为参数的函数 = 高阶函数
  4. 函数式编程的基础就是:高阶函数

=分割线=

http://www.jsqmd.com/news/724312/

相关文章:

  • 从一站式采购到前店后仓,乐居如何重塑汤原的“家”与“业”?
  • MCP协议服务健康检查工具mcp-checkup的设计与实战
  • 旧物回收系统源码 – go语言版
  • 开源知识管理工具Costea:基于间隔重复与知识图谱构建第二大脑
  • 大连做金融相关法律服务的品牌律所推荐,哪家更靠谱? - 工业推荐榜
  • 海康录像机提示“已达到通道资源添加上限”是什么原因---远程维修服务日记
  • 0.43%入选门槛6重筛选:2026年上海家装七强全维度标杆企业重磅揭晓 - 资讯焦点
  • 3步彻底解决Zotero中文文献管理难题:茉莉花插件完全指南
  • uboot学习笔记
  • 不止于Dotplot:解锁MUMmer套件的隐藏技能,从SNP检测到基因组结构变异分析
  • 猫抓cat-catch终极指南:浏览器资源嗅探神器让网页资源下载如此简单
  • 2025—2026年度上海装修市场深度调研:5家靠谱装企全解析 - 资讯焦点
  • 终极指南:如何免费永久备份微信聊天记录到电脑
  • 如何永久备份微信聊天记录?免费开源工具WeChatMsg终极使用指南
  • Docker 化 Java 应用与镜像瘦身完全指南
  • MiGPT:让小爱音箱变身智能AI语音助手,开启智能家居新体验
  • 基于Simulink的燃料电池-锂电池混合动力能量流管理​
  • 学习 C++能带给我们什么
  • LeetCode 哈希表搜索题解
  • VMware Unlocker:5步解锁VMware的macOS虚拟机支持
  • 【西瓜带你学Kafka | 第一期】Kafka的架构设计、核心组件、优缺点、常见应用场景(文含图解)
  • 深入解读C++中的指针变量
  • 猫抓cat-catch:浏览器资源嗅探的终极解决方案,让网页资源捕获变得高效智能
  • 数字线程:数字孪生的“中枢神经”,如何驱动产业智能升级?
  • 智融SW3203, 支持I2C控制的高效率同步升降压控制器。
  • 英雄联盟录像编辑神器:免费开源工具League Director完全指南
  • 2026第一季度上海家装深度调研:九家售后无忧与快速响应装企 - 资讯焦点
  • AI Agent 的七层架构:从 LLM 到自主智能体,中间到底隔了什么?
  • WarcraftHelper:让魔兽争霸3在现代电脑上焕发第二春的必备工具
  • 从零开始了解加油卡回收:推荐的最佳平台大揭秘! - 团团收购物卡回收